怎样通过类名,创建一个这个类的数组?? 怎样通过类名,创建一个这个类的数组?? 解决方案 » 免费领取超大流量手机卡,每月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); } 这个题? 根据鼠标位置插入字符 如何在JPanel中加入背景图? 100分跪求“回复”,小弟目前开发IM系统,要求实现类似QQ显示消息框中的超链接。 事件处理机制,这段代码应该怎么写???!! 求 Java实现资源管理器 或与之相关的程序 类中有String, File类成员变量,如何进行clone zheshizenml 加入IT业者联盟!!! 为什么我下载的jb6 for linux 安装不了?说can not execute binary file为什么?谢谢 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);
}