导航:首页 > 编程语言 > java类遍历

java类遍历

发布时间:2023-09-13 07:56:23

java中怎么遍历list集合

常用的List集合, 可以使用下面几种方式进行遍历

参考代码

importjava.util.ArrayList;
importjava.util.Iterator;

publicclassTest{
publicstaticvoidmain(String[]args){
ArrayList<Integer>list=newArrayList<Integer>();
list.add(5);
list.add(8);
list.add(9);
//方案一推荐.简洁
for(Integere:list){
System.out.print(e+",");
}
//方案二
for(inti=0;i<list.size();i++){
System.out.println(list.get(i));
}
//方案三
Iterator<Integer>it=list.iterator();
while(it.hasNext()){
System.out.println(it.next());
}

}
}

❷ java 遍历 类属性的属性值

用反射,代码你可以参考下面的:
public static void testReflect(Object model) throws NoSuchMethodException, IllegalAccessException, IllegalArgumentException, InvocationTargetException{
Field[] field = model.getClass().getDeclaredFields(); //获取实体类的所有属性,返回Field数组
for(int j=0 ; j<field.length ; j++){ //遍历所有属性
String name = field[j].getName(); //获取属性的名字

System.out.println("attribute name:"+name);
String type = field[j].getGenericType().toString(); //获取属性的类型
if(type.equals("class java.lang.String")){ //如果type是类类型,则前面包含"class ",后面跟类名
Method m = model.getClass().getMethod("get" + name.substring(0,1).toUpperCase() + name.substring(1) );
String value = (String) m.invoke(model); //调用getter方法获取属性值
if(value != null){

System.out.println("attribute value:"+value);
}
}
if(type.equals("class java.lang.Integer")){
Method m = model.getClass().getMethod("get" + name.substring(0,1).toUpperCase() + name.substring(1) );
Integer value = (Integer) m.invoke(model);
if(value != null){
System.out.println("attribute value:"+value);
}
}
if(type.equals("class java.lang.Short")){
Method m = model.getClass().getMethod("get" + name.substring(0,1).toUpperCase() + name.substring(1) );
Short value = (Short) m.invoke(model);
if(value != null){
System.out.println("attribute value:"+value); }
}
if(type.equals("class java.lang.Double")){
Method m = model.getClass().getMethod("get" + name.substring(0,1).toUpperCase() + name.substring(1) );
Double value = (Double) m.invoke(model);
if(value != null){
System.out.println("attribute value:"+value);
}
}
if(type.equals("class java.lang.Boolean")){
Method m = model.getClass().getMethod("get"+name);
Boolean value = (Boolean) m.invoke(model);
if(value != null){
System.out.println("attribute value:"+value);
}
}
if(type.equals("class java.util.Date")){
Method m = model.getClass().getMethod("get"+name);
Date value = (Date) m.invoke(model);
if(value != null){
System.out.println("attribute value:"+value.toLocaleString());
}
}
}

❸ java中如何遍历实体类的属性和数据类型以及

可以通过反射获取到属性方法信息:

publicclassUser{
privateintid;
privateStringname;
privatedoubleamount;

publicintgetId(){
returnid;
}

publicvoidsetId(intid){
this.id=id;
}

publicStringgetName(){
returnname;
}

publicvoidsetName(Stringname){
this.name=name;
}

publicdoublegetAmount(){
returnamount;
}

publicvoidsetAmount(doubleamount){
this.amount=amount;
}
}

获取类信息:

importjava.lang.reflect.Field;
importjava.lang.reflect.Method;
importjava.lang.reflect.Parameter;

publicclassReflectDemo{
publicstaticvoidmain(String[]args){
Classclz=User.class;
//获取所有自己定义的属性(不包含从Object继承的,如果需要可使用getFields()方法)
Field[]fields=clz.getDeclaredFields();
for(Fieldf:fields){
System.out.println("属性名称:"+f.getName()+",属性类型:"+f.getType().getName());
}

//获取所有自己定义的方法(同样不包含继承的)
Method[]methods=clz.getDeclaredMethods();
for(Methodm:methods){
System.out.println("方法名称:"+m.getName());
System.out.println("返回值类型:"+m.getReturnType().getName());
//获取方法的所有参数
Parameter[]parameters=m.getParameters();
for(Parameterp:parameters){
System.out.println("参数类型:"+p.getType().getName());
}
System.out.println("==========================================");
}
}
}

❹ JAVA实体类对象怎么遍历

//按ID查询:推荐使用HQL--Hibernate官方推荐的查询语言
public Person queryById(String id){
Person p = null;
//使用Hibernate查询语言
String hql = "FROM Person as p WHERE p.id=?" ;
//通过专Query接口属查询
Query q = this.session.createQuery(hql) ;
q.setString(0, id);
List list = q.list() ;
Iterator iter = list.iterator();
while(iter.hasNext()){
p = (Person)iter.next();
}
return p ;
}

❺ Java中怎么遍历map中value值

Java中遍历Map对象的4种方法:

1、通过Map.entrySet遍历key和value,在for-each循环中使用entries来遍历.推荐,尤其是容专量大时。

(5)java类遍历扩展阅读:

关于JAVA的遍历知识补充:

1、list和set集合都实现了Iterable接口,所以他们的实现类可以使用迭代器遍历,map集合未实现该接口,若要使用迭代器循环遍历,需要借助set集合。

2、使用EntrySet 遍历,效率更高。

❻ java Map 怎么遍历

关于java中遍历map具体有四种方式,请看下文详解。

1、这是最常见的并且在大多数情况下也是最可取的遍历方式,在键值都需要时使用。

Map<Integer, Integer> map = newHashMap<Integer, Integer>();

for(Map.Entry<Integer, Integer> entry : map.entrySet()) {

System.out.println("Key = "+ entry.getKey() + ", Value = "+ entry.getValue());

}

2、在for-each循环中遍历keys或values。

如果只需要map中的键或者值,你可以通过keySet或values来实现遍历,而不是用entrySet。

Map<Integer, Integer> map = newHashMap<Integer, Integer>();

for(Integer key : map.keySet()) {

System.out.println("Key = "+ key);

}

for(Integer value : map.values()) {

System.out.println("Value = "+ value);

}

该方法比entrySet遍历在性能上稍好(快了10%),而且代码更加干净。

3、使用Iterator遍历

使用泛型:

Map<Integer, Integer> map = newHashMap<Integer, Integer>();

Iterator<Map.Entry<Integer, Integer>> entries = map.entrySet().iterator();

while(entries.hasNext()) {

Map.Entry<Integer, Integer> entry = entries.next();

System.out.println("Key = "+ entry.getKey() + ", Value = "+ entry.getValue());

}

不使用泛型:

Map map = newHashMap();

Iterator entries = map.entrySet().iterator();

while(entries.hasNext()) {

Map.Entry entry = (Map.Entry) entries.next();

Integer key = (Integer)entry.getKey();

Integer value = (Integer)entry.getValue();

System.out.println("Key = "+ key + ", Value = "+ value);

}

4、通过键找值遍历(效率低)

Map<Integer, Integer> map = newHashMap<Integer, Integer>();

for(Integer key : map.keySet()) {

Integer value = map.get(key);

System.out.println("Key = "+ key + ", Value = "+ value);

}

假设Map中的键值对为1=>11,2=>22,3=>33,现用方法1来遍历Map代码和调试结果如下:

(6)java类遍历扩展阅读:

1、HashMap的重要参数

HashMap 的实例有两个参数影响其性能:初始容量 和加载因子。容量是哈希表中桶的数量,初始容量只是哈希表在创建时的容量。

加载因子 是哈希表在其容量自动增加之前可以达到多满的一种尺度。当哈希表中的条目数超出了加载因子与当前容量的乘积时,则要对该哈希表进行 rehash 操作(即重建内部数据结构),从而哈希表将具有大约两倍的桶数。

在Java编程语言中,加载因子默认值为0.75,默认哈希表元为101。

2、HashMap的同步机制

注意,此实现不是同步的。 如果多个线程同时访问一个哈希映射,而其中至少一个线程从结构上修改了该映射,则它必须保持外部同步。

(结构上的修改是指添加或删除一个或多个映射关系的任何操作;以防止对映射进行意外的非同步访问,如下:

Map m = Collections.synchronizedMap(new HashMap(...));

❼ java中的遍历是什么意思

遍历就是把每个元素都访问一次.比如一个二叉树,遍历二叉树意思就是把二叉树中的每个元素都访问一次

阅读全文

与java类遍历相关的资料

热点内容
名企笔试如何刷编程题 浏览:49
js跳到页面某地 浏览:550
jsp展示clob字段 浏览:779
nyx在网络上是什么意思 浏览:145
乐播农业app是什么 浏览:530
编程框架如何开发 浏览:136
金庸群侠传3修改代码 浏览:712
检察院的文件类别有哪些 浏览:793
怎么把九游残留数据删除 浏览:828
有什么女生主动聊天的app 浏览:436
有哪些可以督促自己的app 浏览:244
用USB传输视频文件夹显示为空 浏览:710
恢复文件软件免费版手机 浏览:648
lg怎么隐藏文件 浏览:836
苹果免费读书app推荐 浏览:497
刘骏微信 浏览:113
书旗旧版本80 浏览:467
教编程考什么证 浏览:990
下载编程猫后哪里有客服 浏览:13
如何编辑歌曲文件格式 浏览:638

友情链接