增强for循环
for(声明语句:表达式)
{
? ?//代码句子
}
声明语句:声明新的局部变量,该变量的类型必须和数组元素的类型匹配。其作用域限定在循环语句块,其值与此时数组元素值相等。
表达式:表达式是要访问的数组名,或者是返回值为数组的方法
package com.taogu.Struct;
?
public class ForDemo06 {
? ?public static void main(String[] args) {
? ? ? ?int[] numbers = {10,20,30,40,50};//定义了一个数组
?
? ? ? ?for (int i =0;i<5;i++){
? ? ? ? ? ?System.out.println(numbers[i]);
? ? ? }
? ? ? ?System.out.println("===================");
?
? ? ? ?//遍历数组的元素
? ? ? ?for (int x:numbers){
? ? ? ? ? ?System.out.println(x);
? ? ? }
? }
}
break continue
break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)
continue语句用在循环语句中,用于某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判断。
管局goto关键字
-
goto关键字很早就在程序设计语言中出现。尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而,在break和continue这两个关键字的身上,我们仍然能看出一些goto的影子---带标签的break和continue -
“标签”是指后面跟着一个冒号的标识符,例如:label: -
对Java来说唯一用到标签的地方实在循环语句之前。而在循环之前设置标签的唯一理由是:我们希望在其中嵌套另一个循环,由于break和continue关键字通常只中断当前循环,但若随同标签使用,他们就会中断到存在标签的地方。
package com.taogu.Struct;
?
public class BreakDemo {
? ?public static void main(String[] args) {
? ? ? ?int i = 0;
? ? ? ?while (i<100){
? ? ? ? ? ?i++;
? ? ? ? ? ?System.out.println(i);
? ? ? ? ? ?if (i==30){
? ? ? ? ? ? ? ?break;
? ? ? ? ? }
?
? ? ? }
? ? ? ?System.out.println("123");
? }
}
package com.taogu.Struct;
?
public class ContinueDemo {
? ?public static void main(String[] args) {
? ? ? ?int i = 0;
? ? ? ?while (i<100){
? ? ? ? ? ?i++;
? ? ? ? ? ?if (i%10==0){//i%10==00 表示i能整除10,不留余数
? ? ? ? ? ? ? ?System.out.println();
? ? ? ? ? ? ? ?continue;
? ? ? ? ? }
? ? ? ? ? ?System.out.print(i);
? ? ? }
? }
}
package com.taogu.Struct;
?
public class TextDemo01 {
? ?public static void main(String[] args) {
? ? ? ?//打印三角形 5行
? ? ? ?for (int i = 1; i <= 5; i++) {
? ? ? ? ? ?for (int j = 5; j >=i ; j--) {
? ? ? ? ? ? ? ?System.out.print(" ");
? ? ? ? ? }
? ? ? ? ? ?for (int j = 1; j <= i; j++) {
? ? ? ? ? ? ? ?System.out.print("*");
? ? ? ? ? }
? ? ? ? ? ?for (int j = 1; j < i; j++) {
? ? ? ? ? ? ? ?System.out.print("*");
? ? ? ? ? }
?
? ? ? ? ? ?System.out.println();
? ? ? }
?
? }
}
package com.taogu.Struct;
?
public class TextDemo01 {
? ?public static void main(String[] args) {
? ? ? ?//打印三角形 5行
? ? ? ?for (int i = 1; i <= 5; i++) {
? ? ? ? ? ?for (int j = 5; j >=i ; j--) {
? ? ? ? ? ? ? ?System.out.print(" ");//外循环执行i=1后,第一个内循环逐个执行j=5,4...1
? ? ? ? ? }
? ? ? ? ? ?for (int j = 1; j <= i; j++) {
? ? ? ? ? ? ? ?System.out.print("*");//第二个内循环根据条件执行
? ? ? ? ? }
? ? ? ? ? ?for (int j = 1; j < i; j++) {//执行第三个内循环
? ? ? ? ? ? ? ?System.out.print("*");
? ? ? ? ? }
?
? ? ? ? ? ?System.out.println();//第三个内循环走完后,重新执行外循环,i自增1后,在继续走一轮
? ? ? }
?
? }
}
|