java三种循环,随机数输入以及switch小彩蛋

循环: do…while循环
    while循环
    for循环

do…while 循环 :

do{
	 循环语句体; 		
	 条件控制语句;
} while(判断语句,为真执行,为假跳出);

案例:
打印出三次hello world。

do…whlie 循环
int i = 0;
do{
 System.out.println(“hello world”);
 i++;
}while(i<3);

While 循环:

While(判断语句,为真执行,为假跳出){
		循环体语句;
		条件控制语句;
}

案例:
打印出三次hello world。

int i = 0;
while(i<3){
 System.out.println(“hello world”);
i++;
}

for循环

for(初始化语句;条件判断语句;条件控制语句){
                循环体语句;
}

案例:
打印出三次hello world。

for(int i = 0;i<3;i++ ){
 System.out.println(“hello wreld”);
}//不建议在循环之中定义变量。


三种循环的区别:

  1. for循环和while循环是先判断后执行,而do…while循环则是先执行(一次)后判断。
  2. for和while的区别
      条件控制语句所控制的自增变量,因为归属于for的语法结构体中,在for循环结束后,就不能够再被访问了。但是针对于while来说,自增变量是不归属于其语法结构的,在该循环结束后,该变量可以继续使用。(指的是如果在for(int = 0;…;……)里面定义了的变量,而实际上,一般我们定义变量,并不会选择在循环之中定义。)
  3. **死循环(无限循环)的三种格式
    1. for(;;){ }
    2. while(true){ }
    3. do{ }while(true);**

嵌套循环

(外部循环执行一次,内部循环全部执行到循环结束,然后再进行外部循环……)

案例:
for(int i = 0;i < 10;i++){
 for(int j = 0; j < 10;j++){
  System.out.println(“嵌套循环。”)
}
}//不建议在循环之中定义变量。
如上嵌套循环之中,i每增加1,则j循环10次。只有当i循环到不满足条件之后,该嵌套循环才能够结束。

关于i++,i–的解释说明;

在循环体中,无论是i++还是i—都是每一次进行进行1的增减,并且++或者—都是可以将值存入到i中,类似于i+=1或者i-=1的意思!
所以,当我们使用循环语句让其一次进行>1的增减的话,我们应该适应+=或者-=。
  否则,我们进行增减的得到的新的值无法进行存储,将会报错!
案例:
public class Work02{
 public static void main(String args[]){
   int year = 2019;
   for(;year>=1949;year-=12){
   System.out.print(" "+year);
   }
  }
}

continue和break的使用:

continue是**跳过**当前循环,只跳过一次循环然后执行下一次循环。
break 是**跳出**所有循环。
Continue是跳过,而break是跳出。

案例:
//continue
public class TestDay305{
  public static void main(String args[]){
   int i;
  for(i = 0;i<10;i++){
   if (i % 2 == 0){
    continue;
    }System.out.println(i);
   }
  }
}

//break
public class TestDay305{
 public static void main(String args[]){
  int i;
  for(i = 0;i<10;i++){
  if (i % 2 != 0){
   break;
   }System.out.println(i);
  }
 }
}

Scanner

导     包: import java.util.Scanner;
创 建 对 象:Scanner sc = new Scanenr(System.in);
可以 输入整数:int a = sc.nextInt();
可以输入浮点数:double b = sc.nextDouble();
可以输入字符串:String c = sc.next();

Random

导   包:import java.util.Random;
创建 对象:Random r = new Random();
创建随机数:int a = r.nextInt(10);
创建随机数详解:
  int a = r.nextInt (10); 指的是生成0-9的随机数。
  int a = r.nextInt(10)+1;+1是指的是先执行生成一个随机数之后让生成的随机数+1;例如生成数是5,则最后输出的数字是6。所以,如果我们想要生成的是1-10之间的随机数,可以用以上的方式。不可以在括号内写(11),因为这样生成的数是0-10,并不是1-10;
  如果我们想要生成某个区间的随机数,例如生成50-100之间的随机数!则:
  有公式:int a = r.nextInt(大的数-小的数+1)+小的数;
  代入公式则是:int a = r.nextInt(100-50+1)+50;//生成50-100之间的随机数,意思是先生成0-50之间的随机数之后,再+50。即以50为底。

彩蛋:

关于switch的经典的面试题:

int a = 8;
switch(a){
 default:System.out.println(“a”);
 case 1:System.out.println(“b”);
 case2:System.out.println(“c”);
}
问:上述程序输出结果?
答案是:abc
详解:switch 分支语句的分支先运行case后运行default,无视代码的顺序。而本题因为分支语句后没有“break”,则循环不会被终止。程序的执行顺序为case1→case2→default→case1→case2
  所以,最后的输出结果是abc。

猜你喜欢

转载自blog.csdn.net/qq_41371264/article/details/103327371