煮水的鱼

java入门day03

控制流程

一:   if else   /    switch

 1。 随机数的产生:导入import java.lang.Math;

    num=Math.random()  -->[0,1); 

    [0,1)*n-m+1  >= (int)[0, n-m+1)  =[0,n-m]

    [m,n]之间的随机整数--->num=(int)(Math.random()*(n-m+1))+m

2.   扫描输入: 导入importjava.util.Scanner;

    Scanner  sc(也可以用其他命名) =new Scanner(System.in);

    类型 +id名 =sc.next();

    double nextDouble() , float nextFloat() , int nextInt() 等与nextLine()连用时都存在nextLine()语句内容扫描不出,

    解决的办法是:在每一个 next()、nextDouble() 、 nextFloat()、nextInt() 等语句之后加一个sc.nextLine()语句,将被next()去掉的Enter结束符过滤掉。

3.  if else  / switch 可以相互嵌套:但一般不多于3-4个

  switch 匹配值可以是 整形,char,字符串;

  switch 只能处理等值条件判断的情况,而且条件必须是整型变量或字符型变量

  if 没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况(不等值)

  break表示跳出匹配分支。如果省略break,会一直向下匹配,直到需要break或者直到匹配结束。

4.循环结构:循环条件,循环操作,循环条件的变化(一般用自加自减控制)。

  while(循环条件){ 循环操作 }    -->先进行循环条件判断,再决定是否循环。

  do{ 循环操作 } while(循环条件)-->先进行一次循环操作,再决定是否继续循环

  for(循环变量;循环条件;循环变量的变化){ 循环操作 }

  定义变量一般在循环外,避免在循环内循环定义,占用内存。

  没有循环条件或变化,容易形成死循环。

  break-->终止所在循环;   continue-->中止所在循环(如果continue后有代码操作,不执行,进入下次循环)

  

  循环可以嵌套。双层循环可以输出一个面。

  

for(int i=1;i<=3;i++){ // 控制row
	for(int j=1;j<=6;j++){ // 控制column
		System.out.print(" * ");
	}
	System.out.print("\n");
}

  

  下面为利用循环输出实心菱形与空心菱形代码。

 1 import java.util.Scanner;
 2 public class J313{
 3     public static void main(String[] args){
 4         Scanner sc=new Scanner(System.in);
 5         System.out.println("请输入菱形行数");
 6         int m=sc.nextInt();
 7         System.out.println("实心菱形");
 8 //分四部分,右上空格和上方* ;左下空格和下方* ;
 9         for(int i=0;i<m;i++){
10             for(int j=i;j<m;j++){
11                 System.out.print(" ");//左上空格
12             }
13             for(int j=0;j<i;j++){
14                 System.out.print("* ");//上方* 
15             }System.out.println();
16         }//上部分循环开始,一次输出一行空格和* ;
17         
18         for(int i=m+1;i>m&&i<=2*m;i++){
19             for(int j=m+1;j<i;j++){
20                 System.out.print(" ");//左下空格
21             }
22             for(int j=i;j<=2*m;j++){
23                 System.out.print("* ");//下方* 
24             }System.out.println();
25         }//下部分循环开始,一次输出一行空格和* ;
26         //============================================================
27         System.out.println("空心菱形");
28 //分四部分,右上空格+一条* 和上方空格+* ;左下空格+一条* 和下方空格+* ;
29         for(int i=0;i<m;i++){
30             for(int j=i;j<m;j++){
31                 System.out.print(" ");
32             }System.out.print("* ");    
33         
34             if(i==0){
35                 System.out.println("");
36             }else{
37                 for(int k=1;k<i;k++){
38                     System.out.print("  ");
39                 }System.out.println("* ");
40             }
41         }    
42         for(int i=0;i<=m;i++){
43             for(int j=1;j<=i;j++){
44                 System.out.print(" ");
45             }System.out.print("* ");    
46         
47             for(int j=i+1;j<m;j++){
48                 System.out.print("  ");
49             }if(i!=m)System.out.println("*");
50         }            
51     }
52         
53 }

 

  

 

    

posted on 2018-03-14 16:18  煮水的鱼  阅读(82)  评论(0)    收藏  举报

导航