如何获得 Array中元素的数据类型,如何获得 List中元素的数据类型
解决方案 »
- 碰到个问题,暂时没琢磨明白,关于数据库连接和finally的
- 代码如下,
- 问两个问题:1、java怎么样杀死一个进程(知道这个进程名)? 2、怎么样关掉一个执行程序的窗口(知道这个执行程序的路径)?
- 简单的java基础题目
- 高手解决的问题------------------结帖超快!!!!!!!!
- 请问JSplitePane怎么设置不允许拖动边界???
- 有谁可以告诉我在哪里下载JSDK1.4
- android 关于播放URL地址问题
- Math.rint(Math.random()*9)可以返回double类型的数,请问如何返回int类型的值。或者char类型的。谢谢。
- JAVA IO流关闭后报错
- swt 托盘
- 内部类如何访问外部的非静态变量
for(Iterator i=list.iterator();i.hasNext()){
Object o=list.next();
String className=o.getClass().getName();
}
其中className为数据类型的String表示
Array同理
如何获得 Array中元素的唯一数据类型
如何获得 List中各个元素的数据类型
/**
@version 1.1 2004-02-21
@author Cay Horstmann
*/import org.jdom.Document;
import org.jdom.Element;
import org.jdom.output.Format;
import org.jdom.output.XMLOutputter;import java.io.FileOutputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.lang.reflect.Array;
import java.util.List;class Person {
private String name;
private int age;
}public class ReflectionTest { private String s;
private boolean b;
private int i;
private Person man;
private List list;
private int[] f = new int[5]; //Array 我希望能反射出 int[] 或是 int 可实际返回的是 [I 啥玩意??
//private Array array; public static void printFields(Class c1) {
Element root = new Element(c1.getName());
Document doc = new Document(root);
String name =""; try {
Field[] fields = c1.getDeclaredFields();
int length = fields.length;
for (int i = 0; i < length; i++) {
Field f = fields[i];
Class type = f.getType();
if(type != Array.class)
name = f.getName();
else
name = Element element = new Element("pro");
element.setAttribute("name", name); Element modifier = new Element("Modifier");
modifier.setText(Modifier.toString(f.getModifiers()));
element.addContent(modifier); Element eType = new Element("Type");
eType.setText(type.getName());
element.addContent(eType); root.addContent(element);
}
Format format = Format.getCompactFormat();
format.setEncoding("utf-8");
format.setIndent(" ");
XMLOutputter XMLOut = new XMLOutputter(format);
try {
XMLOut.output(doc, new FileOutputStream(c1.getName() + ".xml"));
}
catch (Exception e) {
}
}
catch (Exception e) {
}
} public static void main(String[] args) {
ReflectionTest rt = new ReflectionTest();
String name = "";
name = rt.getClass().getName();
/* name = "java.lang.Double";
if (args.length > 0)
name = args[0];
else
System.out.println("AAAAA");
*/
try {
Class c1 = Class.forName(name);
printFields(c1);
}
catch (ClassNotFoundException e) {
}
}
}
如何获得 Array中元素的唯一数据类型
如何获得 List中各个元素的数据类型
for(Iterator i=list.iterator();i.hasNext();){
Object o=i.next();
String className=o.getClass().getName();
System.out.println(className);
}
这样不就找到list的每一个元素的数据类型了。