JAVA中的for循环几种使用方法讲解
短信预约 -IT技能 免费直播动态提醒
一般写法
1.遍历数组的传统方式
int [] integers={1,2,3,4};
for (int j=0;j<integers.length;j++){
int i = integers[j];
System.out.println(i);
}
2.遍历Collection对象的传统方式
String[] strings = {"A", "B", "C", "D"};
Collection stringList = java.util.Arrays.asList(strings);
for (Iterator itr = stringList.iterator(); itr.hasNext();) {
Object str = itr.next();
System.out.println(str);
}
第二种写法
for (循环变量类型 循环变量名称 : 要被遍历的对象) 循环体
3.遍历数组的简单方式
int[] integers = {1, 2, 3, 4};
for (int i : integers) {
System.out.println(i);
}
遍历数组的简单方式的等价代码
int[] integers = {1, 2, 3, 4};
for (int 变量名甲 = 0; 变量名甲 < integers.length; 变量名甲++) {
System.out.println(integers[变量名甲]);
}
4.遍历Collection的简单方式
String[] strings = {"A", "B", "C", "D"};
Collection list = java.util.Arrays.asList(strings);
for (Object str : list) {
System.out.println(str);
}
遍历数组的简单方式的等价代码
String[] strings = {"A", "B", "C", "D"};
Collection stringList = java.util.Arrays.asList(strings);
for (Iterator 变量名乙 = list.iterator(); 变量名乙.hasNext();) {
Object str = 变量名乙.next();
System.out.println(str);
}
防止在循环体里修改循环变量
5.禁止重新赋值
int[] integers = {1, 2, 3, 4};
for (final int i : integers) {
i = i / 2;
}
这只是禁止了对循环变量进行重新赋值。给循环变量的属性赋值,或者调用能让循环变量的内容变化的方法,是不被禁止的。
6.允许修改状态
Random[] randoms = new Random[]{new Random(1),new Random(2), new Random(3)};
for (final Random r : randoms) {
r.setSeed(4);
System.out.println(r.nextLong());
}
类型相容问题
7.使用和要被遍历的数组中的元素相同类型的循环变量
int[] integers = {1, 2, 3, 4};
for (int i : integers) {
System.out.println(i);
}
8.使用和要被遍历的Collection中的元素相同类型的循环变量
Collection< String> strings = new ArrayList< String>();
strings.add("A");
strings.add("B");
strings.add("C");
strings.add("D");
for (String str : strings) {
System.out.println(str);
}
循环变量的类型可以是要被遍历的对象中的元素的上级类型。 例如,用int型的循环变量来遍历一个byte[]型的数组,用Object型的循环变量来遍历一个Collection< String>(全部元素都是String的Collection)等。
9.使用要被遍历的对象中的元素的上级类型的循环变量
String[] strings = {"A", "B", "C", "D"};
Collection< String> list = java.util.Arrays.asList(strings);
for (Object str : list) {
System.out.println(str);
}
10.使用能和要被遍历的对象中的元素的类型自动转换的类型的循环变量
int[] integers = {1, 2, 3, 4};
for (Integer i : integers) {
System.out.println(i);
}
注意,这里说的“元素的类型”,是由要被遍历的对象的决定的――如果它是一个Object[]型的数组,那么元素的类型就是Object,即使里面装的都是String对象也是如此。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341