对象数组的for-each循环和集合容器
for (int s : ints){
System.out.println(s);
}
这个是一个简单的for-each遍历数组,在这个循环里面的++是不起任何的作用的
class Value{ private int i; public void set(int i){ this.i=i; } public int get(){ return i; } } Value[] a= new Value[10]; for (int i = 0; i <a.length; i++) { a[i] = new Value(); a[i].set(i); } for (Value v : a){ System.out.println(v.get()); v.set(0); } for (Value v : a){ System.out.println(v.get()); }
第一遍输出的是0-9而第二遍我们做了个set为0在遍历的时候是0了
在a这个数组里面每一个单元都指向了外部的那个v,循环的第一轮进行设置了0循环到1的时候set0那个1就变成了0
for-each循环对应对象数组是不一样的,在循环的每一轮他是可以拿到的
ArrayList<String> list = new ArrayList<>(); list.add("1"); list.add("2"); list.add("1"); for (String s : list){ System.out.println(s); } System.out.println("================="); HashSet<String> set = new HashSet<>(); set.add("1"); set.add("2"); set.add("1"); for (String s1 : set){ System.out.println(s1); }
这个set就是数学的set字集合中没有重复的元素这两个容器都可以直接输出
如果想让上面那个Value直接输出需要加入public String toString() 这个就可以直接输出
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix