A. java实现JSON多层遍历
JSONObject jsonObject = new JSONObject(s);
然后用Iterator迭代器遍历取值,建议用反射机制解析到封装好的对象中
JSONObject jsonObject = new JSONObject(jsonString);
Iterator iterator = jsonObject.keys();while(iterator.hasNext()){
key = (String) iterator.next();
value = jsonObject.getString(key);
}
B. java中如何遍历一个类的所有对象
你这里的numbers是一个对象数组,所以你可以这样遍历,单个对象是不行的。遍历对象内部成员,在反射里面有方法,我刚练习完,只有将对象的成员分解到数组中才行。分享给你了:
Class c=Class.forName("AbstractClassTest.Car"); //要包名+类名
Object o=c.newInstance();
Car car=(Car)o;
Field[] fields=c.getDeclaredFields();//拿到数据成员
Method[] methods=c.getMethods();//拿到函数成员
/*System.out.println(fields.length);
System.out.println(methods.length);*/
for(Field f : fields){
System.out.println("该类的内部变量有:"+f.getName());
}
for(Method m : methods) {
System.out.println("该类的方法有:"+m.getName());
}
C. Java中枚举怎么遍历
我们可以通过反射, 以及枚举类的静态方法values()来进行遍历:
代码:
enum Rating {
UNRATED, G, PG, PG13, R, NC17
}
public class Test {
public static void main(String args[]) {
System.out.println("第一种通过反射");
Class clz = Rating.class;
for (Object obj: clz.getEnumConstants()) {
System.out.println(obj);
}
System.out.println("第二种通过枚举静态方法values()");
for (Rating rate: Rating.values()) {
System.out.println(rate);
}
}
}
运行结果:
第一种通过反射
UNRATED
G
PG
PG13
R
NC17
第二种通过枚举静态方法values()
UNRATED
G
PG
PG13
R
NC17
D. java中有没有办法直接遍历Object对象,将Object中的各属性值输出,如何进行
你可以借助泛型类Iterator<E>将Objiect对象遍历。具体的实现去查查jad1.6 API函数吧。如果没有,给邮箱
E. java遍历object
全部采芹迅灶用for(Type o:Set)方式
package oristand.project.qq.text;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
public class Hashmapdemo
{
public static void main(String[] args)
{
Map<String, Integer> mp1 = new HashMap<String, Integer>();
mp1.put("one", new Integer(1));
mp1.put("two", new Integer(2));
mp1.put("three", new Integer(3));
mp1.put("one", new Integer(100));
System.out.println(mp1);
//昌此 get all keys
Set keys = mp1.keySet();
for (Object object : keys)
{
System.out.println(object);
}
Collection values = mp1.values();
//嫌扮 get all values
for (Object object3 : values)
{
System.out.println(object3);
}
// get key=value
Set entry = mp1.entrySet();
for (Object object2 : entry)
{
System.out.println(object2);
}
Set hs = new HashSet();
hs.add(1);
hs.add(2);
hs.add(3);
hs.add(1);
// System.out.println(hs);
// Iterator its=hs.iterator();
// get values
for (Object o : hs)
{
System.out.println(o);
}
ArrayList list = new ArrayList();
list.add(1);
list.add(2);
list.add(3);
list.add(0, 4);
// System.out.println(list);
list.add(1);
System.out.println(list);
// get values
for (Object o : list)
{
System.out.println(o);
}
}
}