我是靠谱客的博主 有魅力牛排,最近开发中收集的这篇文章主要介绍java基础——流程控制(选择结构)if语句流程结构控制语句分类: 作用:用来控制程序执行流程。,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

流程结构控制语句分类:
作用:用来控制程序执行流程。

选择结构:


也称为分支结构,他有特定的语法规则,
要执行具体的逻辑运算进行判断,结果有两个,
从而进行选择,按照不同选择执行不同的代码。
java中提供了两中选择结构语句:
1-if
2-switch(后补充)

if语句:
三种格式:
1-:if(关系表达式){
         语句体
    }

首先要看关系表达式的结果是true还是false
如果是true就执行语句体
如果是false就不执行。
package com.lcn.day03;
public class IfDemo2 {


	/**
	 * @param args
	 */
	public static void main(String[] args) {
		int x = 100;
		
		if(x == 100){
			System.out.println("x等于100");//选择结构
		}
		if(x == 200){
			System.out.println("x等于200");//选择结构
		}
		System.out.println("hello world");//顺序结构

	}
}
结果:
x等于100
hello world

if语句注意事项:
1-关系表达式无论简单还是复杂结果都是boolean类型。
2-if语句如果控制的语句体只有一条语句,大括号可以省略,
如果是多条语句就不能省略。(建议不省略写)
3-一般来讲有左大括号就没有分号,有分号就没有左大括号。

格式2-if(关系表达式){
      语句体1
   }else{
      语句体2
    }

注意:else后面没有表达式。
执行流程:
  首先比较表达式的结果,是true还是false
  如果是true就执行语句体1
  如果是false就执行语句体2
package com.lcn.day03;


public class IfelseDemo1 {


	/**
	 * @param args
	 */
	public static void main(String[] args) {
        int x = 100;
		
		if(x == 100){
			System.out.println("x等于100");//选择结构
		}else{
			System.out.println("x不等于100");
		}
		
		System.out.println("hello world");//顺序结构
	}
}


案例1:
package com.lcn.day03;
import java.util.Scanner;
public class IfelseDemo2 {


	/**
	 * 键盘录入获取两个数中较大的值
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入第一个数:");
		int x = sc.nextInt();
		System.out.println("请输入第二个数:");
		int y = sc.nextInt();
		
		int max;
		if(x>y){
			max = x;
		}else{
			max = y;
		}
		System.out.println("最大值是:"+max);
	}
}


案例2:
package com.lcn.day03;
import java.util.Scanner;
public class IfelseDemo4 {


	/**
	 *判断一个数据是奇数还是偶数
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数:");
        int a = sc.nextInt();
        if(a%2==0){
        	System.out.println("是偶数");
        }else{
        	System.out.println("是奇数"); 
        }
	}

}

思考:
if语句和三元运算符的区别。
下面是用三元表达式做我们之前做过的练习。
package com.lcn.day03;

import java.util.Scanner;


public class IfelseDemo5 {


	/**
	 * 三元表达式来比较两个数的较大值
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入第一个数:");
		int x = sc.nextInt();
		System.out.println("请输入第二个数:");
		int y = sc.nextInt();
		
		int max = (x>y?x:y);
		System.out.println("最大值是:"+max);

	}
}

但是上面做的奇数偶数就不能用三元替代。
结论:
三元可以用if修改,但if未必可用三元修改(例:当if语句控制的是一个输出语句时)。
因为三元控制的是结果。



格式3-
  if(关系表达式1){
   语句体1
  }else if(关系表达式2){
   语句体2
  }
    ...
  
  }else{
  语句体n
  }

执行流程:
首先还是看关系表达式结果是true还是false,如果是true执行语句体1
如果是false执行关系表达式2,判断关系表达式2的结果是true还是false,然后同上执行。
注意当所有关系都不成立是执行最后一条语句,但是当有一条语句成立是下面的判断就停止执行。
案例:
键盘录入一个成绩病判断成绩等级:
package com.lcn.day03;

import java.util.Scanner;

public class IfelseDemo6 {


	/**
	 * 键盘录入一个成绩病判断成绩等级:
	 * 0-60  不及格
	 * 60-70 及格
	 * 70-80良
	 * 80-90好
	 * 90-100优秀
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入你的成绩:");
		int scores = sc.nextInt();
		
		if(scores>=0&&scores<60){
			System.out.println("你的成绩等级:不及格");
		}else if(scores>=60&&scores<70){
			System.out.println("你的成绩等级:及格");
		}else if(scores>=70&&scores<80){
			System.out.println("你的成绩等级:良");
		}else if(scores>=80&&scores<90){
			System.out.println("你的成绩等级:好");
		}else if(scores>=90&&scores<=100){
			System.out.println("你的成绩等级:优秀");
		}else{
                        System.out.println("您输入的成绩有误,请重新输入");
                }
	}
}

结果:
请输入你的成绩:
88
你的成绩等级:好
案例:
package com.lcn.day03;


import java.util.Scanner;


public class IfelseDemo7 {


	/**
	 *鍵盤錄入月份輸出對應的季節
	 */
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个月份:");
        int month = sc.nextInt();
        
        if(month==12||month==1||month==2){
        	System.out.println(month+"月对应的季节是:冬季");
        }else if(month>=3&&month<=5){
        	System.out.println(month+"月对应的季节是:春季");
        }else if(month>=6&&month<=8){
        	System.out.println(month+"月对应的季节是:夏季");
        }else if(month>=9&&month<=11){
        	System.out.println(month+"月对应的季节是:秋季");
        }
	}
}

结果:
请输入一个月份:
12
12月对应的季节是:冬季

if语句的嵌套使用。
案例:获取三个数据中的最大值
package com.lcn.day03;


public class IfelseDemo8 {


	/**
	 * if语句嵌套使用求三个数中的最大数
	 */
	public static void main(String[] args) {
		int a = 20;
		int b = 30;
        int c = 50;
        //以前三元做法
        int max = (a>c?(a>b?a:b):(b>c?b:c));
        System.out.println("三元做法的最大值是:"+max);
        //使用if嵌套
        if(a>b){//如果成立执行,如果不成立执行else
            if(a>c){
            	max = a;
            }else{
            	max = c;
            }
        }else{
        	if(b>c){
        		max = b;
        	}else{
        		max = c;
        	}
        }
        System.out.println("if嵌套输出的最大值是:"+max);
	}
}

三元做法的最大值是:50
if嵌套输出的最大值是:50

最后

以上就是有魅力牛排为你收集整理的java基础——流程控制(选择结构)if语句流程结构控制语句分类: 作用:用来控制程序执行流程。的全部内容,希望文章能够帮你解决java基础——流程控制(选择结构)if语句流程结构控制语句分类: 作用:用来控制程序执行流程。所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(100)

评论列表共有 0 条评论

立即
投稿
返回
顶部