java学习--第七天

9 篇文章 0 订阅
9 篇文章 0 订阅

最近事情比较多进度慢了许多,接下来立个flag,加快进度

争取在29号前,跟进到600章作用内容

附原视频链接:


Java基础-多重循环控制

简介

将一个循环放在另一个循环体内,就形成了嵌套循环,for、while、do...while循环都可以作为内层和外层循环;最多建议两层嵌套,超过三层可读性很差

示例代码

public class hello01 {
	public static void main(String[] args){
		for(int i = 0;i < 2;i++){
			for (int j = 0;j < 3;j++){
				System.out.print("i=" + i + "j=" + j);
			}
		}
	}
}

综合性小练习

//1、统计3个班成绩情况,每个班有5名同学,求出各个班的平均分和所有班级的平均分[学生成绩从键盘输入]
//2、统计3个班几个人数,每个班有5名同学

import java.util.Scanner;
public class hello01 {
	public static void main(String[] args){
		double totalScore = 0;
		int passCounter = 0;
		Scanner myScanner = new Scanner(System.in);

		for(int i = 1;i <= 3;i++){
			double sum = 0;//注意这里定义局部变量,不能是全局,全局会变成累加
			for (int j = 1;j <= 5;j++){
				System.out.print("输入" + i + "班第" + j +("位同学的成绩"));
				double grade1 = myScanner.nextDouble();//将输入的值存放到grade1中
				sum += grade1;//单个班级循环累计,以便计算全班平均分
				if(grade1 > 60){
					passCounter ++;
				}//当成绩大于60时,及格人数累计
			}
			System.out.print(i + "班的平均分是" + (sum / 5));
			totalScore += sum;//将每个班级的成绩 每次循环进行累计,以便计算全级平均分
		}System.out.print("所有班的平均分是" + totalScore /(3*5));//计算全级平均分
		System.out.print("全级有" + passCounter + "人及格");
	}
}

注意拆解需求,由繁到简,先死后活

Java基础-跳转控制语句

跳转控制-break

break是用于控制循[for,while,do...while]环和switch,给语句块提供出口(终止执行)。利用Math.random()配合演示

基本语法:

{......

break;

......

}

流程图

注意这里break是结束while循环

示例代码

public class hello01 {
	public static void main(String[] args){
		for (int i = 0; i < 10;i++){
			if( i == 3 ){
				break;
			}System.out.println("i=" + i);
		}
	}
}
>i=0
>i=1
>i=2

拓展:标签的基本使用

label1:{ ......

label2: { ......

label3: { ......

break label2;

......

}

}

}

  1. 这里的label不是特殊的标识符,可以任意名称
  2. 实际开发中尽量不要使用标签
  3. break后指定到哪个label就退出到哪里
  4. 如果没有指定break,默认退出最近的循环体

示例代码

public class hello01 {
	public static void main(String[] args){
		abc1:
		for (int i = 0; i < 4;i++){
		abc2:
			for(int j = 0; j < 10;j++ ){
				if (j == 2) {
					break;//等价break abc2
				}
			}
			System.out.println("i=" + i);
		}
	}
}
>j=0
>j=1
>j=0
>j=1
>j=0
>j=1
>j=0
>j=1
登录验证小综合
import java.util.Scanner;
public class hello01 {
	public static void main(String[] args){
		Scanner myScanner = new Scanner(System.in);
		String user = "";
		String pass = "";
		int counter = 3;
			for (int i = 1; i <= 3; i++){
				System.out.println("请输入用户名");
				user = myScanner.next();
				System.out.println("请输入密码");
				pass = myScanner.next();
				//注意这里用到了equals方法,推荐以下写法
				if ("丁真".equals(user) && "666".equals(pass)){
					System.out.println("恭喜你丁真,登陆成功");
					break;
				}
				counter --;
				System.out.println("你还有"+counter+"次机会");
			}
	}
}

跳转控制-continue

continue用户结束本次循环继续执行下次循环

基本语法:

{......

continue;

......

}

流程图

示例代码

public class hello01 {
	public static void main(String[] args){
		int i = 1;
		while( i <= 4 ){
			i++;
			if ( i == 2 ){
				continue;
			}
			System.out.println("i=" + i);
		}
	}
}
>i=3
>i=4
>i=5

Detail:

continue同样受到标签的作用

跳转控制-return

简单看下,后续”方法“的章节会详解

public class hello01 {
	public static void main(String[] args){
		int i = 1;
		for(i=1 ;i <= 5;i++ ){
			if ( i == 3 ){
				System.out.println("test一下" + i);
				return;//当return用在方法时,跳出方法,如果用在main,退出整个程序
			}
			System.out.println("i=" + i);
		}
	}
}
>i=1
>i=2
>test一下3

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值