7、JAVA入门——if选择结构

目录

一、流程控制结构

二、if选择结构

1、单分支if语句

2、双分支if语句

3、多分支if语句

4、嵌套if控制语句

三、equals和Math.random()用法

1、equals用法

2、随机数Math.random()用法


一、流程控制结构

(1)在Java中有3种流程控制结构:顺序结构选择结构循环结构

(2)顺序结构:顺序结构是指程序从上向下依次执行每条语句的结构,中间没有任何的判断和跳转。

(3)选择结构:选择结构是根据条件判断的结果来选择执行不同的代码。选择结构可以细分为单分支结构、双分支结构和多分支结构。Java提供了if控制语句和switch语句来实现选择结构。

(4)循环结构:循环结构是根据判断条件来重复性地执行某段代码。Java提供了while语句、do-while语句、for语句来实现循环。JDK5.0新提供了增强for循环,可以更简单的方式来遍历数组和集合。

二、if选择结构

1、单分支if语句

语法格式:

        if(条件){
			语句
		}

执行规律:

1)对条件的结果进行判断。

2)如果条件的结果为true,执行大括号里的语句。

3)如果条件的结果为false,跳过大括号里的语句,执行if结构后面的语句。

注意事项:

1)条件的结果只能是布尔类型的值

2)如果条件后大括号中的语句只有一句,大括号可以省略不写,但建议写上。


2、双分支if语句

语法格式:

		if(条件){
			语句1
		}else{
			语句2
		}

执行规律:

1)对条件的结果进行判断。

2)如果条件的结果为true,执行语句1。

3)如果条件的结果为false,执行语句2。

注意事项:

1)else子句不能单独使用,它必须是if语句的一部分,与最近的if语句配对使用


3、多分支if语句

语法格式:

		if(条件1){
			语句1
		}else if(条件2){
			语句2
		}else if(条件3){
			语句3
		}
			......
		}else{
			语句n
		}

执行规律:

1)对条件1的结果进行判断。

2)如果条件1的结果为true,执行语句1;如果条件1的结果为false,则判断条件2的结果

3)如果条件2的结果为true,执行语句2;如果条件2的结果为false,则判断条件3的结果

4)如果条件3........

5)如果所有条件都为false,则执行else里的语句n。

注意事项:

1)不论多分支if语句中有多少个条件,只会执行符合条件的一个,如果没有符合条件的,则执行else子句中的语句。

2)else if语句可以有多个。

3)else语句可以省略。

4)多分支if语句的各个条件排列是有顺序的,从上到下条件越来越宽松。

5)如果if语句或else子句中要执行的语句超过一条,则必须将这些语句用大括号括起来。


4、嵌套if控制语句

语法格式:

		if(条件1){
			if(条件2){
				语句1
			}else{
				语句2
			}
		}else{
			if(条件3){
				语句3
			}else{
				语句4
			}
		}

执行规律:

1)对条件1的结果进行判断。

2)如果条件1的结果为true,再对条件2的结果进行判断。如果条件2的结果为true,则执行语句1;否则,执行语句2。

3)如果条件1的结果为false,再对条件3的结果进行判断。如果条件3的结果为true,则执行语句3;否则,执行语句4。

注意事项:

1)else子句不能单独使用,它必须是if语句的一部分,与最近的if语句配对使用

三、equals和Math.random()用法

1、equals用法

需求:比较两个字符串的内容是否相同

用法:boolean result = 字符串1.equals(字符串2);

含义:使用字符串1.equals(字符串2)来比较字符串1和字符串2的内容是否相同,若相等,返回true;否则返回false.

例子:

public class Demo01 {

	public static void main(String[] args) {
		
		String str1 = "Hello";
		String str2 = "hello";
		
		boolean result1 =str1.equals(str2);
		System.out.println("str1和str2内容相同:"+result1);
		
		boolean result2 = str1.equals("Hello");
		System.out.println("str1里的内容和Hello相同:"+result2);
	}
}

2、随机数Math.random()用法

        获取随机数:固定写法
        Math.random():随机返回一个[0.0,1.0)的double类型的数据

        double num1 =Math.random();
        System.out.println(num1);

        Math.random()*10:随机返回一个[0.0,10.0)的double类型的数据

        double num2 =Math.random()*10;
        System.out.println(num2);

        (int)Math.random()*10:随机返回一个[0,10)的int类型的数据

        int num3=(int)(Math.random()*10);
        System.out.println(num3);

        (int)(Math.random()*12+19):随机获取一个[19,31)之间的int类型的数据

        int num4=(int)(Math.random()*12+19);
        System.out.println(num4);

       (int)(Math.random()*(num2-num1)+num1):随机获取一个[num1,num2)之间的int类型的

        数据,num1<num2

实例:

	public static void main(String[] args) {
		/*
		 * 抽奖规则:会员号的百位数字等于产生的随机数字即为幸运会员
		 */
		
		//创建Scanner类对象
		Scanner sc = new Scanner(System.in);
		
		//获取会员卡号
		System.out.println("请输入你的4位数字会员卡号:");
		int cardId = sc.nextInt();
		System.out.println("会员卡号:"+cardId);
		
		//获取会员卡号上的百位数字
		int baiWei = cardId/100%10;
		
		//随机获取一个[0,10)之间整数
		int num = (int)(Math.random()*10);
		
		//判断:如果会员卡号的百位数字等于随机数,则为幸运会员
		if(baiWei==num){
			System.out.println("恭喜你,称为幸运会员");
		}else{
			System.out.println("很遗憾,没能成为幸运会员,继续努力.....");
		}
		
		System.out.println("程序执行完毕");
		

	}

猜你喜欢

转载自blog.csdn.net/hh867308122/article/details/126628569