怎样通过类名,创建一个这个类的数组?? 怎样通过类名,创建一个这个类的数组?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 先声明 在赋值就行啦如 ClassName[] aa;aa = new ClassName[10]; 类名是个字符串啊,可以这么声明吗?String ClassName = "xxxx";ClassName[] aa;aa = new ClassName[10];???????????????????????????? ClassName[] aa = new ClassName[n];for(int i = 0; i < n; i++){aa[i] = getClass();} 类名是个字符串啊,可以这么声明吗?String ClassName = "xxxx";ClassName[] aa;aa = new ClassName[10];????????????????????????????-----------------------------------------这样:object[] aa=Class.forName(ClassName)[10]; String是一个类名,而ClassName则是这个类的一个对象,一个实例了,你还用“ClassName[] aa;”,那就错了。 类名是个字符串,可以这么声明:这样:String ClassName = "xxxx";object[] aa=Class.forName(ClassName)[10]; 你们这样肯定不行,干嘛不直接定义一个Object[] ,呵呵。然后直接往里面放这个类型的实力就可以了。呵呵。实例怎么产生?就象JDBC那些Driver类一样也行啊。呵呵。 Class.forName(ClassName).getInstance. String ClassName = "xxxx";Class type = Class.forName(ClassName);Object[] aa = Array.newInstance(type, 10);这样就创建这个类的数组 多去看看JDK中的反射机制包,还有对数组的附值是Array.set(array, i, fileVar); ClassName handle[] = new ClassName(); 错了,是ClassName handle[] = new ClassName[Size];for(;;) 赋值 你们这样肯定不行,干嘛不直接定义一个Object[] ,呵呵。然后直接往里面放这个类型的实力就可以了。呵呵。实例怎么产生?就象JDBC那些Driver类一样也行啊。呵呵。 Class.forName(ClassName).getInstance.----------------对,应该是这样String ClassName = "xxxx";object[] aa=new object[10];for(int i=0;i<aa.length;i++) aa[i]= Class.forName(ClassName).newInstance(); 谢谢大家的帮忙问题主要是这样的,我有一个数据,前提是我不知道他是什么类型,遍历这个数据找到一些我想要对象,然后再做了一个数据,我用一个ArrayList装载的,当使用ArrayList.toarray()时返回一个Object[]的数据,我在别的地方就不可以强制类型转换了。object[] aa=Class.forName(ClassName)[10];试过了,不可以String ClassName = "xxxx";object[] aa=new object[10];for(int i=0;i<aa.length;i++) aa[i]= Class.forName(ClassName).newInstance();也不可以,虽然他里面是特定的类型,不知道为什么这样以后就变成Object了,无法强制类型转换。Class type = Class.forName(ClassName);Object[] aa = Array.newInstance(type, 10);再试试,好用马上给分 list //传递近来的数组参数list2 //我处理过的ArraylistClass cls = Class.forName(list.getClass().getName()); Object[] aa = (Object[]) java.lang.reflect.Array.newInstance(cls, list2.size()); for(int i = 0; i<aa.length; i++) { aa[i] = list2.get(i); } return aa;但是我强制类型转换的时候竟然出错了,我打了类名,没有问题,不知道为什么 同意:shockely(梦想的天空)用反射来动态创建一个对象数组 public static Object[] newArray(String name, int size) throws ClassNotFoundException { return (Object[]) java.lang.reflect.Array.newInstance(Class.forName(name),size); } 一些JAVA方面的疑问 jdk1.5,遇到类库不存在问题 刚刚学jsp 请指教了,谢谢 请问如何获得java编写好的应用程序名称(具体解释见内容~谢谢)? 字符串的一个简单问题(高分悬赏100) 刚学,一个编译问题,请各位帮帮我! 请高手们帮我查一下下面代码存在的问题!关于计算器的 java中怎么把数字格式成字符,比如1变成‘01’ 怎样用applet访问数据库? 怪现象:::在不使用JRE的环境下,怎样在浏览器中显示JAPPLET的东东(急!!) Java学习路线是什么? java的好去处 高手进!!在网页中如何使非模式对话框 (showModelessDialog())隐藏在主窗口背后?
aa = new ClassName[10];
String ClassName = "xxxx";
ClassName[] aa;
aa = new ClassName[10];????????????????????????????
aa[i] = getClass();
}
String ClassName = "xxxx";
ClassName[] aa;
aa = new ClassName[10];????????????????????????????
-----------------------------------------
这样:
object[] aa=Class.forName(ClassName)[10];
这样:
String ClassName = "xxxx";
object[] aa=Class.forName(ClassName)[10];
干嘛不直接定义一个Object[] ,呵呵。然后直接往里面放这个类型的实力就可以了。呵呵。
实例怎么产生?就象JDBC那些Driver类一样也行啊。
呵呵。 Class.forName(ClassName).getInstance.
Class type = Class.forName(ClassName);
Object[] aa = Array.newInstance(type, 10);这样就创建这个类的数组
ClassName handle[] = new ClassName[Size];
for(;;)
赋值
干嘛不直接定义一个Object[] ,呵呵。然后直接往里面放这个类型的实力就可以了。呵呵。
实例怎么产生?就象JDBC那些Driver类一样也行啊。
呵呵。 Class.forName(ClassName).getInstance.----------------
对,应该是这样
String ClassName = "xxxx";
object[] aa=new object[10];for(int i=0;i<aa.length;i++) aa[i]= Class.forName(ClassName).newInstance();
问题主要是这样的,我有一个数据,前提是我不知道他是什么类型,遍历这个数据找到一些我想要对象,然后再做了一个数据,我用一个ArrayList装载的,当使用ArrayList.toarray()时返回一个Object[]的数据,我在别的地方就不可以强制类型转换了。object[] aa=Class.forName(ClassName)[10];
试过了,不可以String ClassName = "xxxx";
object[] aa=new object[10];for(int i=0;i<aa.length;i++) aa[i]= Class.forName(ClassName).newInstance();
也不可以,虽然他里面是特定的类型,不知道为什么这样以后就变成Object了,无法强制类型转换。Class type = Class.forName(ClassName);
Object[] aa = Array.newInstance(type, 10);
再试试,好用马上给分
list2 //我处理过的Arraylist
Class cls = Class.forName(list.getClass().getName());
Object[] aa = (Object[]) java.lang.reflect.Array.newInstance(cls, list2.size());
for(int i = 0; i<aa.length; i++)
{
aa[i] = list2.get(i);
}
return aa;但是我强制类型转换的时候竟然出错了,我打了类名,没有问题,不知道为什么
用反射来动态创建一个对象数组
return (Object[]) java.lang.reflect.Array.newInstance(Class.forName(name),size);
}