今天学习了增强for循环,break和continue的作用,以及了解goto关键字,debug的作用。
下面是知识点及练习
package com.liangwenwei.流程控制;
public class 增强for循环 {
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);
}
/*增强for循环
* 语句为
* for(声明语句:表达式){
* //代码语句}
* jdk5以后引入的一种主要用于数组或集合的增强型for循环
* 是一种简化代码
* 声明语句:声明新的局部变量。该变量的类型必须和数组元素的类型匹配,
* 其作用域限定在循环语句块,其值与此时数组元素的值相等
* 表达式:表达式是要访问的数组名,或者是返回值为数组的方法*/
}
}
package com.liangwenwei.流程控制;
public class break和continue及goto关键字 {
public static void main(String[] args) {
int a=0;
while (a<100) {
a++;
System.out.println(a);
if (a == 30) {
break;
}
}
System.out.println("=============");
int b=0;
while (b<100) {
b++;
if (b % 10 == 0) {
System.out.println();
continue;
}
System.out.print(b);
}
/*break在任何循环语句的主体部分,均可用break控制循环流程
* break用于强行退出循环,不执行循环中剩余的语句
* break语句也在switch语句中使用
* continue语句用于循环语句体中,用于终止每次循环过程,
* 即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定*/
System.out.println("================");
//打印101-150之间所有的质数
/*质数(prime number)又称素数,有无限个。
*一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,
*换句话说就是该数除了1和它本身以外不再有其他的因数*/
int count=0;
//了解就好,不建议使用
outer:for (int i=101;i<150;i++){
for (int j=2;j<i/2;j++){
if (i%j==0){
continue outer;
}
}
System.out.println(i+" ");
}
/*关于goto关键字
* goto关键字很早就在程序设计语言中出现。尽管goto仍是java的保留字,但并未在语言中得到正式的使用
* Java中没有goto,但在break和continue这两个关键字上,还有跟goto相似的情况,带标签的break和continue
* 标签是指后面跟着一个冒号的标识符,例如:outer:
* 对java来说唯一用到标签的地方是在循环语句之前。
* 而在循环之前设置标签的唯一理由是:希望在其中嵌套另一个循环,
* 由于break和continue关键字通常只中断当前循环,
* 但若随同标签使用,就会中断到存在标签的地方。*/
System.out.println("============");
//打印三角形 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();
}
//在左边代码行打上红色圆形标记,点击右上的小虫子图标(debug)可以向上向下走,看到代码的每一次运行
}
}
package com.liangwenwei.流程控制;
public class for循环练习3 {
public static void main(String[] args) {
/*1.先打印第一列
* 2.把固定的1再用一个循环包起来
* 3.去掉重复项,i<=j
* 4.调整样式*/
//打印九九乘法表
for (int j = 1; j <= 9; j++) {
for (int i = 1; i <= j; i++){
System.out.print(j+"*"+i+"="+(j*i)+"\t");
}
System.out.println();
//要学会拆分问题,分步的去解决问题的需求
}
}
}
package com.liangwenwei.流程控制;
public class for循环练习4 {
public static void main(String[] args) {
//1-9分三行排列
for (int i = 1; i <= 9; i++) {
System.out.print(i+"\t");
if (i%3==0){
System.out.println();
}
}
}
}