ava基础知识02-

今日目标

分支结构(if-else if - else)

分支结构(switch-case)

循环结构(for/do-while/while)

教学导航

  • 掌握分支结构
  • 掌握循环结构
  • 总结区分循环结构中for、do-while/while循环的用法

1.分支结构(if-else if -else)

1.1需求分析

A:流程控制语句中的分类:

  • 顺序结构

    程序中最简单的流程控制,没有特定的语法,是按照代码的先后顺序,依次执行,程序中大多数都是这样执行的。
  • 选择结构

  • 循环结构

1.2 步骤分析
1.3 代码实现
/* 一条路
		 * if(判断表达式){
	    		语句块1;
			}
		 */
		//删除整行,ctrl+D
		int age = 12000;
		if(age < 18){
			System.out.println("我是未成年!");
		}
/* 两条路
		 * if(判断表达式){
    		语句块1;
			}else{
			语句块2;
			}
		 */
		if (age < 18) {
			System.out.println("我是未成年");
		}else{
			System.out.println("我们很年轻!");
		}
/*   多条路
		 * if(判断表达式1){
    		语句块1;
		}else if(判断表达式2){
    		语句块2;
		}else if(判断表达式3){
    		语句块3;
		}else{
    		语句块4;
		}
		 */
//王者荣耀
		/*
		 * 三步走:
		 * 一.导包:
		 * 1.手动导包,java.util.Scanner;
		 * 2.红色的小叉叉,系统去修改。
		 * 3.快捷方式导包:ctrl+shift+o
		 * 二.创建对象
		 * 三.接收数据
		 */
		
		Scanner sc = new Scanner(System.in);
		System.out.println("请输入你的rank分数,进行段位查询:");
		int rank = sc.nextInt();
		
		if (rank < 50) {
			System.out.println("渣渣");
		}else if(rank >= 50 && rank < 60){
			System.out.println("黄金段位");
		}else if(rank >= 60 && rank < 70){
			System.out.println("铂金段位");
		}else if(rank >= 70 && rank < 80){
			System.out.println("钻石段位");
		}else if(rank >= 80 && rank < 90){
			System.out.println("星耀段位");
		}else if(rank >= 90 && rank < 100){
			System.out.println("最强王者");
		}else{
			System.out.println("无人能挡!");
		}
		sc.close();
1.5 练习

/*练习:
​ * 1.根据键盘用户的输入使用if-else if - else
​ * 90-100 优秀
​ * 80-89 良好
​ * 70-79 中等
​ * 60-69 差
​ * 60分以下 补考去吧!
​ * 2.判断闰年(if-else if-else)。根据用户输入的年份,
​ * 由程序去判断输入的年份是否是闰年
​ * 3.用户输入三个数,判断这三个数中的最大值。
​ *
​ */

2.分支结构 switch-case

2.1需求分析

多条路可走

2.2技术分析

1)语法格式:

switch(变量/表达式){
        case 字面值1:
            语句块1breakcase 字面值2:
            语句块2break;
        ......
    default:
        语句块n;
        
}
2.3执行流程

计算表达式/变量的值=====》判断是不是匹配字面值;

如果匹配,执行语句块1,执行break跳出当前结构;

如果不匹配,判断是不是匹配字面值2;

如果匹配,执行语句块2.执行break跳出当前结构;

如果判断上面都不匹配,有default的话,就执行default的语句。

2.4代码分析
2.5练习

3.循环结构(for循环)

3.1需求分析

1+2+3+…+100

活到老,学到老。

跑步圈数 10圈

打印店:100页

page = 1;page++;//打印一份

page = 2;page++;//打印两份

page++…100 打印100份

3.2技术分析

A:循环的三要素:

for(初始化表达式;条件表达式;修改初始化表达式的值){
    循环体;
}

B:执行流程

1->2->4->3->2->4->3

3.3代码实现
package cn.tedu.day05;
/*
 * for循环的实例
 */
public class ForDemo {
	public static void main(String[] args) {
		//打印10次 我们会成功
		/*for(int i = 0;i < 10; i++){
			System.out.println("我们会成功!");
		}*/
		//打印1+2+3+4+...+50的和
		/*int sum = 0;
		for (int i = 1; i < 51; i++) {
			sum = sum + i;
		}
		System.out.println(sum);//1275
*/		
		/*
		 *   *
		 *   **
		 *   ***
		 *   ****
		 *   第一行:有一个*
		 *   第二行:有两个*
		 *   第五行:五个*
		 */
		/*for (int i = 1; i <= 5; i++) {//控制行
			for (int j = 1; j <= i; j++) {//控制每一行个数*
				System.out.print("* ");
			}
			System.out.println();
		}*/
		//死循环
		/*for(;;){
			System.out.println("我");
		}*/
		
		//continue break
/*		for (int i = 0; i < 6; i++) {
			for (int j = 0; j < 5; j++) {
				System.out.println("i = " + i + "," + ",j=" +j);
			}
			if(i == 2){
				break;
			}
		}*/
		
		
		for (int i = 0; i < 6; i++) {
			for (int j = 0; j < 5; j++) {
				if(j == 2){
					continue;
				}
				System.out.println("i = " + i + "," + ",j=" +j);
			}
		}
		
		//增强型for循环---Person p
/*		for (Person p : args){
			
		}*/
	}

}
3.4扩展内容

break和continue区别;

break的关键字可以使用swith-case和循环结构中,用于跳出当前结构。

continue:只能用在循环结构中,用于结束本次循环继续下一次循环。

在java5中引入了一个新的for循环,增强型for循环。

4.循环结构(while/do-while)

4.1需求分析

猜数字游戏:

int num = 250;
guess
循环结构:

循环变量:??? guess

1)Sytem.out.println(“请开始猜”);

int guess = sc.nextInt();

2)guess != num;

3)----1)

1-300
随机数的产生:
Math.random()-------0.0到0.9999999…
*1000 --------0.0到999.999999…
(int)强转 -------0到999
+1------1到1000

4.2技术分析
while(布尔表达式){
    //循环体
}
//如果是true,则一直循环下去。
//先判断,后执行,有可能一次都不执行。
do{
    循环体;
}while(条件/布尔表达式);
4.3代码分析

新建WhileDemo-----写一个1+2+3+…+100

		int i=1;//初始化数字
		int sum = 0;//求和
		while(i <= 100){//循环条件
			sum += i;//sum=sum + i
			i++;
		}
		System.out.println("sum = " + sum);
4.4作业

1设计一个游戏:

我们手里有21个小球,我们让人和机器先后去取,每次人和机器只能取1-4个小球,不能多取,也不能不取,谁取到最后一个小球谁输。现在请你编写一个程序,要求我们先取,机器后取,机器赢,利于不败之地。

5.数组

5.1 需求分析
5.2技术分析

A:概念:一种数据类型(引用数据类型),相同数据类型元素的集合。

B:定义

int[] arr = new int[6];

C:初始化:

  • int[] arr = new int[6];//默认值0,0,0
  • int[] arr = { 1,2,3,4,5,6};
  • int[] arr = new int[]{1,2,3,4,5};

int[] arr;

arr= {1,2,3};//不正确。只能生命的时候初始化

修改:arr = new int[] {1,2,3,4,5};//正确的

D:数组的访问

  • 得到数组的长度
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值