黑马程序员技术交流社区
标题:
object数组转插char数组
[打印本页]
作者:
haixian
时间:
2014-4-1 09:59
标题:
object数组转插char数组
我需要将 一个object数组转成char数组。该如何去做?
作者:
林发明
时间:
2014-4-1 12:36
我觉得 一般不要这么做,因为Object是根类,那么Object类型的数组就可以存放任何类型的元素,那么在转换是怎么转成相同的一个类型呢,除非知道这个object数组统一存的是char类型的元素
比如下面这个:
Object[] obj = new Object[]{1,"string",3.14};//存入各种类型的元素
char[] ch;
for (int i = 0; i < obj.length; i++) {
char[i] = (char)obj[i];//这里转换就会出差错
}
作者:
刘望望
时间:
2014-4-1 12:44
首先要将一个Object数组转换成一个char类型的数组,Object数组中存放的数据必须能够被强制转换成char类型的数据。下面是我的简单实现
public class Test
{
public static void main(String[] args)
{
Object[] obj = {'A', 'B', 'C', 'D', 'E'};
char[] c = convert(obj);
for(int i = 0; i < c.length; i ++)
{
System.out.println("c[" + i + "] = " + c[i]);
}
}
/**
* 将Object类型的数组转换成char类型的数组,并返回转换后的char类型数组
* @param obj Object类型数组
* @return 转换后的char类型数组
*/
public static char[] convert(Object[] obj)
{
if(obj == null) //如果传入的是null则返回null
{
return null;
}
char[] c = new char[obj.length]; //先创建一个等长的char类型数组
//遍历Object数组中的所有元素并转换成char类型,依次存入char数组中
for(int i = 0; i < obj.length; i++)
{
c[i] = (char) obj[i];
}
return c;
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2