四、Java基础(3)

1.顺序结构

java顺序结构: 就是按照Java默认执行顺序,即主方法中代码从上往下执行代码。

2.选择结构

2.1 if结构

一个 if 语句包含一个布尔表达式和一条或多条语句。

格式:

1 if(布尔表达式){ 代码体 }

        满足才执行

2 if(布尔表达式){ 代码体1 }else { 代码体2 }   

         2选1

3 if (布尔表达式 1) { 代码体1 } else if( 布尔表达式2) { 代码体2 }......else{ 代码体n }

        多选一

4 if ( 布尔表达式外 ){

        if(布尔表达式内){

        嵌套代码体yes

        }else{

        嵌套代码体no

        }   

}

        在满足第一项的同时才能继续进行

代码例:

//当前分数85
int nowScore = 85;
//满分100
if (nowScore > 100) {
    System.out.println("成绩异常的高");
}else if (nowScore <= 100 && nowScore >= 85) {
	System.out.println("成绩等级: A (优秀)");
}else if (nowScore < 85 && nowScore >= 75) {
	System.out.println("成绩等级: B (良好)");
}else if (nowScore < 75 && nowScore >= 60) {
	System.out.println("成绩等级: C (及格)");
}else if (nowScore < 60 && nowScore >= 0) {
	System.out.println("成绩等级: D (不及格)");
}else {
	System.out.println("成绩异常的低");
}

2.2switch结构

swich也是多选一,不同的是 swich中会查询匹配(本人的理解)

swich变量支持的类型:

byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面量。

switch中breack特点:

匹配成功后,执行代码体,当遇到break时,会终止switch语句。如果没有breack语句,那么程序会继续执行下一个case语句 ,不会进行匹配直接执行case中的代码体,直到break语句的出现。

结构:

switch(匹配变量、值){

        case value1: 

        代码体1

       [ break;]

        case value2: 

        代码体2

       [ break;]

        .....

        default : 

        默认执行体(匹配不到)

        [break]

}

代码:(简单的计算机)

Scanner inScanner = new Scanner(System.in);
		
boolean clonsef = true;

do {
	    double num1;  
	    double num2;
		double res;
		System.out.println("这是一个简单的(+、-、*、/)运算器");
		System.out.println("加法运算请输入 ---  1");
		System.out.println("减法运算请输入 ---  2");
		System.out.println("乘法运算请输入 ---  3");
		System.out.println("除法运算请输入 ---  4");
		System.out.println("退出 ---  0");
		System.out.println("请输入要进行的操作");
		int op = inScanner.nextInt();
		System.out.println("----------------");
	    switch (op) {
			case 1 :
				System.out.println("请输入第一个数字");
				num1 = inScanner.nextDouble();
				System.out.println("请输入第二个数字");
				num2 = inScanner.nextDouble();
				res = num1 + num2; 
				if (res == (int)(num1 + num2)) {
					System.out.println( num1 + " + " +  num2 + " = " + (int) res);
				}else{
					System.out.println(num1 + " + " + num2 + " = " + res );
				}
				break;
			case 2 :
				System.out.println("请输入第一个数字");
				num1 = inScanner.nextDouble();
				System.out.println("请输入第二个数字");
				num2 = inScanner.nextDouble();
				res = num1 - num2; 
				if (res == (int)(num1 - num2)) {
					System.out.println(num1 + " + " + num2 + "  = " + (int) res);
				}else{
					System.out.println(num1 + " + " + num2 + "  = " + res);
				}
				break;
			case 3 :
				System.out.println("请输入第一个数字");
				num1 = inScanner.nextDouble();
				System.out.println("请输入第二个数字");
				num2 = inScanner.nextDouble();
				res = num1 * num2;
				if (res == (int)(num1 * num2)) {
					System.out.println(num1 + " x " + num2 + "  = " + (int) res);
				}else{
					System.out.println(num1 + " x " + num2 + "  = " + res);
				}
				break;
			case 4 :
				System.out.println("请输入第一个数字");
				num1 = inScanner.nextDouble();
				System.out.println("请输入第二个数字");
				num2 = inScanner.nextDouble();
				if (num2  == 0) {
					System.out.println("被除数不能为零");
					break;
				}
				res = num1 / num2;
				if (res == (int)(num1 / num2)) {
					System.out.println(num1 + " ÷ " + num2 + "  = " + (int) res);
				}else{
					System.out.println(num1 + " ÷ " + num2 + "  = " + res);
				}
				break;
			case 0 :
				System.out.println("谢谢使用~bye");
				inScanner.close();
				clonsef = false;
				break;
			default:
				System.out.println("请按照要求输入指定的操作");
				break;
			}
			
	System.out.println('\n');
			
} while (clonsef);

3.循环结构

3.1for语句

特点: 考虑循环次数

格式:for(初始条件;判断条件;自增/自减){ 循环体 }

例子:(输出1-10的数字)

for (int i = 1; i <= 10; i++) {
	System.out.println("通过for输出1-10 :"+i);
}

3.2while语句

特点: 不考虑循环次数

格式 : while(布尔表达式){ 循环体 }

例子(输出10-20)

int x = 10;
while(x <= 20){
	System.out.println("循环输出10-20 ---" + x );
	x++;
}

3.3do...while语句

特点: 不考虑循环次数,并且相比较于while  先执行先判断  默认先执行一次

格式: do{ 循环体 }while(布尔表达式);

例子:(统计未成年的年龄)

// 数组中满足条件数字的个数
//统计未成年人的个数
int age [] = {25,30,25,18,16,19,10,60,26,23,9,5,12,14,16,25};
int num = 0;
int index = 0;
//数组的下标
do {
	if (age[index] < 18) {
	num+=1;
	}
	index++;
} while (age.length > index);

4.break和continue语句的用法;

break语句---循环中就表示中断循环的执行

如果循环是嵌套的,那么break语句出现在那一层就中断那一次的循环。

continue语句--往往出现在循环中表示结束当前循环,继续下一次循环执行。

无奈源于不够强大

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值