概述
###先是一个简单的
public class Demo {
public static void print(int a, int b) {
for (int i = 1; i <= a; i++) {
for (int j = 1; j <= b; j++) {
System.out.print("*");
}
System.out.println();
}
}
public static void main(String[] args) {
print(5, 5);
}
}
###数组的定义: ###int[] arr=new int[]{自定义数}; int[] arr={自定义数}; ###int[] arr=new int[数字]; ###冒泡排序从小到大
public class Demo {
public static void main(String[] args) {
int[] arr = new int[] { 10, 51, 48, 45, 21, 34, 51 };
for (int i = 0; i < 6; i++) {
for (int j = 0; j < 6 - i; j++) {
if (arr[j] > arr[j + 1]) {
int temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
}
for (int i = 0; i < 6; i++) {
System.out.println(arr[i]);
}
}
}
···java public class Demo { public static void main(String[] args) { int[] arr = new int[] { 10, 51, 48, 45, 21, 34, 51 }; for (int i = 1; i < 8; i++) { for (int j = 0; j < 6 - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } for (int i = 0; i < 6; i++) { System.out.println(arr[i]); } } }
###在第二个代码中很显然外层循环变了,初始值变成1,循环次数多一次,他不影响代码的执行的,因为外层循环控制的是次数。但不知道大家有没有想过内层循环能不能变呢?答案是否定的,因为它不仅代表的是循环次数还有下面值的交换,j还代表着角标,初始化一定从0开始。
```java
public class Demo2 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[] arr = new int[] { 12, 14, 8, 6, 34, 25 };
for (int i = 0; i <= arr.length - 1; i++) {
for (int j = i + 1; j < arr.length - 1; j++) {
if (arr[i] > arr[j]) {
int temp = arr[j];
arr[j] = arr[i];
arr[i] = temp;
}
}
}
for (int i = 0; i < 5; i++) {
System.out.println(arr[i]);
}
}
}
###选择排序相反,外层循环中i的初始化不能改变,因为数组需要按照要求旅历一遍。
转载于:https://my.oschina.net/u/3220534/blog/830867
最后
以上就是花痴钢笔为你收集整理的玩转双层嵌套的for循环的全部内容,希望文章能够帮你解决玩转双层嵌套的for循环所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复