java基本结构

java基本结构

顺序结构

一句一句往下执行,顺序结构是最简单的语法结构。

 1  2 public class Hello{
 3     public static void main(String []args)
 4     {
 5         System.out.println("Hello1");
 6         System.out.println("Hello2");
 7         System.out.println("Hello3");
 8         System.out.println("Hello4");
 9         System.out.println("Hello5");
10         System.out.println("Hello6");
11     }
12 }

 

 

 

选择结构

常见选择结构if()

语法:

if( boolean类型数据)

{

boolean类型条件成立时执行,不成立时跳过。

}

if() else型

语法:

if(条件)

{ 成立时执行。}

else

{ 不成立时执行。 }

eg:

 1 package Struct;
 2  3 import java.util.Scanner;
 4  5 public class Deom01 {
 6     public static void main(String[] args)
 7     {
 8         Scanner scanner=new Scanner(System.in);
 9         System.out.println("请输入一个整型数据");
10         int x=1;
11         if(scanner.hasNextInt())
12         {
13             x= scanner.nextInt();
14             System.out.println("得到的整型数据为:"+x);
15         }
16         else
17             System.out.println("输入的数据不是整型的哦");
18         scanner.close();
19     }
20 }
21

 


 


 

esle if型

语法:

if(条件1) {1成立时执行}

else if(条件二) {2成立时执行}

else if(条件三) {3成立时执行}

else

{ 以上都不符合时执行。}

注:

else if可以无限嵌套,但是其中只有一条会被执行,执行语句后跟的else if()和else 都被跳过,不再判断执行。

eg:

 1 package Struct;
 2  3 import java.util.Scanner;
 4 //判断成绩分级
 5 public class Deom02 {
 6     public static void main(String[] args) {
 7         int score=-1;
 8         System.out.println("输入分数:");
 9         Scanner scanner=new Scanner(System.in);
10         if(scanner.hasNextInt())
11             score= scanner.nextInt();
12         if(score>=60&&score<=69)
13             System.out.println("及格");
14         else if(score>=70&&score<80)
15             System.out.println("良好");
16         else if(score>=80&&score<90)
17             System.out.println("优秀");
18         else  if(score>=90&&score<=100)
19             System.out.println("非常优秀啊");
20         else if(score>0&&score<60)
21             System.out.println("不及格啊");
22         else
23             System.out.println("输入的成绩不合法");
24 25     }
26 }

 


 

switch(){case}结构

语法:

switch(比较值)

{

case 选值1:

成立时的操作;

break;

case 选值2:

成立时的操作;

break;

......

default:

以上都不成立时的操作;

}

注:字符串String的比较在java SE 7及以上才可以使用,case穿透现象是指当

case成立后其后和本身都没有break时,其后所有的选项都会被执行。

eg:

 1 package Struct;
 2  3 import java.util.Scanner;
 4  5 public class Demo03 {
 6     public static void main(String[] args) {
 7         Scanner s=new Scanner(System.in);
 8         System.out.println("输入成绩等级!");
 9         String x = s.next();
10         switch(x){
11             case "A":
12                 System.out.println("成绩为A");
13                 break;
14             case "B":
15                 System.out.println("成绩为B");
16                 break;
17             case "C":
18                 System.out.println("成绩为C");
19                 break;
20             default:
21                 System.out.println("输入有误!");
22         }
23 24     }
25 }

 


 

反编译

简单讲解利用IDEA进行反编译,

首先,打开File--->project struct--->复制文件夹路径

打开我的电脑输入路径进入文件夹,找到.class文件,将该文件复制进我们当前的包路径,在IDEA中打开该文件,即可看到反编译的代码。

 

循环结构

1、while(){}循环

语法:

while(布尔语句)

{ 循环内容;}

当布尔语句为true时循环执行,当布尔语句为false时循环停止。先判断后执行,错误一次都不执行当一直为true时为死循环,程序一直执行,少数情况下例如等待服务器响应等会用到,一般应避免死循环。一般需要一个表达式失效的条件结束循环。

eg:

 1 package Struct;
 2  3 public class Demo04while { //计算1+2+3+4···+100的值
 4     public static void main(String[] args) {
 5                     int x=0;
 6                     int sum=0;
 7                     while(x<100)
 8                     {
 9                         x++;
10                         sum+=x;
11                     }
12                  System.out.println(sum);
13     }
14 }

 



 

2、 do{ }while(); 循环

语法:

do{ 循环内容; }while(布尔语句);

与while的区别主要是,不管布尔语句正确与否都会先执行一次,后再根据布尔语句确定是否继续循环。

 

3、for(){} 循环

语法:

for(初始化; 布尔语句; 迭代)

{ 循环内容 }

IDEA快捷键,100.for 可以快速写出for循环100次。

执行顺序为:先执行初始化,然后是布尔判断,true时执行循环,false时跳过循环,执行循环后,进行迭代,迭代后继续判断布尔语句的正确与否,然后继续循环或结束循环。

初始化可以为空(在for外面写 ),布尔语句以为空是死循环,迭代也可以写在循环体内部

eg:


 1  2 package Struct;
 3  4 public class Demofor05 {
 5     public static void main(String[] args) {//输出一百以内能被5整除的数,每行输出三个
 6         for(int i=1;i<=100;i++)
 7         {
 8             if(i%5==0)
 9             {
10                    System.out.print(i+"\t");
11                     if(i%(5*3)==0)       //出现能被3*5整除的说明已经输出3次了,换行!
12                     System.out.println();
13             }
14         }
15     }
16 17 }

 


循环的嵌套使用,外层循环一遍,内层循环一圈!

for( )

{

for( ) { }

}

常见案例:打印9 9乘法表!


package Struct;
​
public class Demo06For {
    public static void main(String args[])
    {
        for (int i = 1; i <=9; i++) {     //外层循环
            for (int i1 = 1; i1 <=i; i1++) {  //内层循环
                System.out.print(i1+"*"+i+"="+i*i1+"\t");
            }
         System.out.println();
        }
    }
}
​
​

 

 

 

 

for(){}增强!

java5以后新增的共能,

语法:

for(声明语句 : 表达式 ) //声明语句是定义的变量,表达式是数组或者返回值为数组的方法。

{

循环内容;

}

 

eg:

1 int []numbers={1,2,3,4,5};
2 
3 for( int x : numbers)
4 
5 {
6 
7 System.out.print(x);
8 
9 }

 

结果:

循环五次,每次的输出结果为numbers数组里的值1,2 ,3,4,5

break和continue

break;跳出当前循环,即该循环停止不再执行。

continue;跳出本次循环,开始下次循环。

标签操作,给外层循环一个标签,在内层循环continue或者break标签可以直接跳出这个外层循环

eg

 1  outer: for(int i=1;i<5;i++)
 2         {
 3            for(int x=1;x<5;x++)
 4            {
 5               if(x==2)
 6               {
 7               continue outer;//可以直接结束外层的本次循环,开始下一次循环
 8               }
 9            }
10         }
11  

 

posted @ 2021-02-10 15:55  赤叶秋枫  阅读(165)  评论(0编辑  收藏  举报