Java基础学习第三天-----选择结构语句及随机数.

一.选择结构语句

格式:

switch(表达式){
				  case1:
				    语句体1;
					break;
				  case2:
				    语句体2;
					break;
					....
				  default:
					 语句体n+1;
					 [break;]
					
			  }

2.执行流程

  • 首先执行表达式

  • 拿着表达式的值依次跟case后面的值进行比较,如果有匹配的就执行相应的语句体; 遇到break就结束整个switch语句

  • 如果都没有匹配的值,就会执行default中的语句体n+1
    3.switch语句的注意事项
    A:多个case后面的值是不可以重复的,如果一旦有重复的值,就没办法使用的是哪一个.
    B:switch()中可以给出的数据类型有?

      	基本数据类型: 
      		byte short int char			
      	引用数据类型: 
      		String
      		枚举
    

    C. default语句一定要放在最后的位置吗?
    不一定,执行流程跟default语句放的位置没有什么关系
    D. break语句可以省略吗?
    可以省略 , 但是出现case穿透的效果.
    switch语句的结束条件是

    • break;
    • 走到最后一个{} 结束了
      switch使用前提
    • 有一些是固定值,这个值还不能多,就考虑使用switch
      案例:输入月份判断季节
import java.util.Scanner;
public class Switch {
    public static void main(String[] args){
            Scanner sc =new Scanner(System.in);
            System.out.println("请输入月份!");
            int shuru = sc.nextInt();
            switch(shuru) {
                 case  3 :
                 case  4 :
                case  5 :
                    System.out.println("你输入的月份"+shuru+"为春季!");
                    break;
                case  6:
                case  7:
                case  8:
                    System.out.println("你输入的月份"+shuru+"为夏季!");
                    break;
                case  9:
                case  10:
                case  11:
                    System.out.println("你输入的月份"+shuru+"为秋季!");
                    break;
                case  12:
                case  1:
                case  2:
                    System.out.println("你输入的月份"+shuru+"为冬季!");
                    break;
                default:
                    System.out.println("你输入的月份有误!!!");
            }
}
}

二.循环结构

循环有那几块内容:
* 初始化语句 当做是定义一个变量 这个值是什么 int i = 1; int i = 0; int i = 10
* 条件判断语句 控制循环是否执行
* 循环体 重复做的某一件事情
* 条件控制语句 i++ i-- i+=2 i *=2

1.for循环结构:

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

  • 执行流程:
    * 1. 首先执行初始化语句
    * 2. 执行条件判断语句
    true: 执行循环体
    false: 结束for循环
    * 3. 执行循环体
    * 4. 执行条件控制语句
    * 5. 回到第二步继续判断,直到for循环结束.
    案例一: 输出数据
public static void main(String[] args) {
			 for(int i = 1 ; i <= 5 ; i++){
				   System.out.println(i);
			   }
			   
			    for(int i = 5 ; i >= 1 ; i--){
				   System.out.println(i);
			   }
		}

案例二: 求和

public static void main(String[] args) {
		 	  // 求和思想
		 	   int sum = 0;
		 	   // 0 + 1 + 2 + 3 + 4 + 5
			   for(int i = 1 ; i <= 5 ; i++){
				  //  sum += i;
				  sum = sum + i;// 0 + 1;
			   }
			   System.out.println(sum);
		 }

案例三: 求偶数和

public static void main(String[] args) {
				int sum = 0;
			   for(int i = 1 ; i <= 100 ; i++){
				   // 求偶数和
				  if(i % 2 == 0){
				  	// 相加
					  sum += i;
				  }
			   }
			   System.out.println(sum);
		}

案例四: 水仙花

public class ForDemo05{
			public static void main(String[] args) {
		      
			   for(int i = 100 ; i <= 999 ; i++){
				   // 对i进行获取 个位  十位  百位
				    int ge = i % 10;
					int shi = i / 10 % 10;
					int bai = i / 100;
					// 水仙花数的特点: 每一位上立方和等于本身
					if(ge * ge * ge + shi * shi * shi + bai * bai * bai == i){
						System.out.println(i);
					}
			   }
		    }
		}

2:while循环结构:

格式:
初始化语句;

		while(条件判断语句){

		循环体;
		条件控制语句;
	}

执行流程:
* 1. 首先执行初始化语句
* 2. 执行条件判断语句
true: 执行循环体
false: 结束while循环
* 3. 执行循环体
* 4. 执行条件控制语句

    1. 回到第二步继续判断,直到while循环结束
      案例:珠穆朗玛峰
public class WhileDemo01{
				public static void main(String[] args) {
			      
				  // 定义变量 统计叠了多少次
				  int count = 0;
				  // 定义纸的厚度
				  double hou = 0.1;
				  // 定义珠穆朗玛峰的高度
				  int height = 8844430;
				  
				  // 叠多少次,能叠到珠穆朗玛峰的高度
				  // 叠到什么时候,就不叠了
				  
				  while(hou <= height){
					  hou *= 2;
					  count++;
				  }
				  System.out.println(count);
				  System.out.println(hou);
				 

			    }
			}

3:do…while循环结构

格式:

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

执行流程:

  1. 首先执行初始化语句
  2. 执行循环体
  3. 执行条件控制语句
  4. 执行条件判断语句
    true: 执行循环体
    false: 结束do…while循环
  5. 回到第二步继续判断,直到do…while循环结束

三.三种循环之间的区别:

1:do…while循环的与for循环和while循环的最大区别是什么?
2:for循环和while循环在有什么区别?
总结:
1.do…while: 不管条件是否满足,至少会先执行一次
for和while循环:先判断条件,如果条件满足就会执行循环,反之一次都不执行

	2.最大区别是在于初始化语句的作用域
	  for循环:初始化语句在for循环中()中,只能是在for循环{}中使用,出了{}就不能在使用了
	  while循环:初始化语句在方法内的,这个初始化语句在方法内任意的位置都可以使用,出了这个方法就不能使用了

3.死循环:

	for(;;){}
	for(int i = 0;;i++){

	}

	for(int i = 0 ; i <= 5;){

	}

	while(true){

	}

四、控制循环语句

1:break语句

		break: 终止
		作用: 用来终止循环的
		使用场景:
			* switch语句中
			* 循环中: for  while do...while

2:continue 语句

		作用: 跳过本次循环,继续下一次循环
		使用场景:
			* 循环中: for  while do...while

注意事项:控制循环语句,脱离使用场景,没有任何意义!
continue 用来跳过判断语句进行下一次判断;
break 直接终止循环

五、循环嵌套

格式:

for(){
	for(){
		
	}
}


for(){
	
	while(){
		
	}
}

while(){
	for(){
		
	}
}

循环嵌套的思想:
外循环执行一次,内循环执行n次

六、Random 随机数

Random随机数使用步骤?
* 导包
import java.util.Random

		* 创建Random对象: 
		Random r = new Random();
			
		*  随机数据
		nextInt(int n); 
		int num = nextInt(100);

// 随机的范围是[0,100)
int num = nextInt(100)+1;// 随机的范围是[0,99]+1 -->[1,100]
随机数范围 (最大数-最小shu+1)+最小;
案例: 猜数字

import java.util.Scanner;
import java.util.Random;

public class Zuoye{
    public static void main(String[] args) {
        Random r=new Random();
        int suiji = r.nextInt(100)+1;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数字");
        while(true) {
            int shuru = sc.nextInt();
            if (shuru > suiji) {
                System.out.println("你输入的数字大于它");
            } else if (shuru < suiji) {
                System.out.println("你输入的数字小于它");
            } else {
                System.out.println("你猜对了");
                break;
            }
    }
        System.out.println("奖励棒棒糖!");
    }
}
Python网络爬虫与推荐算法新闻推荐平台:网络爬虫:通过Python实现新浪新闻的爬取,可爬取新闻页面上的标题、文本、图片、视频链接(保留排版) 推荐算法:权重衰减+标签推荐+区域推荐+热点推荐.zip项目工程资源经过严格测试可直接运行成功且功能正常的情况才上传,可轻松复刻,拿到资料包后可轻松复现出一样的项目,本人系统开发经验充足(全领域),有任何使用问题欢迎随时与我联系,我会及时为您解惑,提供帮助。 【资源内容】:包含完整源码+工程文件+说明(如有)等。答辩评审平均分达到96分,放心下载使用!可轻松复现,设计报告也可借鉴此项目,该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的。 【提供帮助】:有任何使用问题欢迎随时与我联系,我会及时解答解惑,提供帮助 【附带帮助】:若还需要相关开发工具、学习资料等,我会提供帮助,提供资料,鼓励学习进步 【项目价值】:可用在相关项目设计中,皆可应用在项目、毕业设计、课程设计、期末/期中/大作业、工程实训、大创等学科竞赛比赛、初期项目立项、学习/练手等方面,可借鉴此优质项目实现复刻,设计报告也可借鉴此项目,也可基于此项目来扩展开发出更多功能 下载后请首先打开README文件(如有),项目工程可直接复现复刻,如果基础还行,也可在此程序基础上进行修改,以实现其它功能。供开源学习/技术交流/学习参考,勿用于商业用途。质量优质,放心下载使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值