【核心笔记】Java入门到起飞,小白都能看懂的Java教程 (三)——结构体(含练习及答案)

一 顺序结构

二 分支结构——if判断

第一种格式:

if(关系表达式){

语句体;

}

  • 首先计算关系表达式的值,如果值为true就执行语句体,否则不执行语句体,直接执行后面的语句
  • 如果语句体只有一行代码,可以省略{}不写
  • 如果对一个布尔类型的变量进行判断,不要使用==号,直接把变量作为关系表达式语句

第二种格式:

if(关系表达式){

语句体1;

}else{

语句体2;

}

  • 首先计算关系表达式的值,如果值为true就执行语句体1,否则执行语句体2,再执行后面的语句(二选一)

练习: 假设某影院售卖了100张票,票的序号为1~100;其中奇数票号坐在左侧,偶数票号坐在右侧。键盘录入一个整数表示电影票的票号,根据不同情况,给出不同的提示

import java.util.Scanner;
public class HelloWorld {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int seat = sc.nextInt();
        if(seat >= 0 && seat <= 100){
            if (seat % 2 == 0){
                System.out.println("坐在右侧");
            }else{
                System.out.println("坐在左侧");
            }  
        }
    }
}

 第三种格式:

if(关系表达式1){

语句体1;

}else if (关系表达式2){

语句体2;

}

.......

else{

语句体n;

}

  • 首先计算关系表达式1的值,如果值为true就执行语句体1,否则判断关系表达式2,如果为真则执行语句体2......如果所有关系表达式都为假,则执行语句体n,再执行后面的语句

练习:商场都有VIP的会员制,根据不同的会员有不同的折扣。假设商品总价为1000。键盘录入会员级别,并计算出实际支付的钱。会员1级:打九折;会员2级:打八折;会员3级:打7折;非会员不打折

import java.util.Scanner;
public class HelloWorld {
    public static void main(String[] args) {
        int count = 1000;
        Scanner sc = new Scanner(System.in);
        int greed = sc.nextInt();
        if (greed == 1){
            System.out.println(0.9*count);
        }else if (greed == 2){
            System.out.println(0.8*count);
        } else if (greed == 3) {
            System.out.println(0.7*count);
        }else{
            System.out.println(count);
        }
    }
}

三 分支结构——switch选择

语法格式

switch(表达式){

case 值1:

语句体1;

break;

case 值2 :

语句体2;

break;

......

default:

语句体n;

break;

}

  • 首先计算表达式的值,依次和case中的值比较,如果有对应的值,则执行相应的语句体,遇到break结束,如果均不匹配,则执行default中的语句,并结束整个Switch语句。
  • case后面的值只能是字面量,不能是变量,且不能重复
  • default的位置和省略:
  • default可以省略,语法没有错误。其位置任意,但是永远会在最后执行。

case穿透:

如果没有break语句,就会产生brake穿透。首先计算表达式的值,依次和case中的值比较,如果有对应的值,则执行相应的语句体,并顺序执行下面的case语句体,直到遇到break或}为止。

如果多个case语句体的语句重复,可以考虑利用case穿透简化代码

switch新特性(简化书写)

switch(表达式){

case 值1->{

语句体1;

}

case 值2 ->{

语句体2;

}

......

default ->{

语句体n;

}

}

  • 如果语句体只有1行代码,则{ }也可以省略
  • switch和if第三种格式的使用场景:
  • if的第三种格式一般用于对范围的判断
  • switch一般用于有限个数据的一一列举

四 循环结构——for循环

for(初始化语句;条件判断语句;条件控制语句){

循环体语句;

}

  • 初始化语句只执行一次;判断语句为真,继续循环;判断语句为假,结束循环。

练习:求1~5之间的和

public class HelloWorld {
    public static void main(String[] args) {
    /*求一到五之间的和*/
        int sum=0;
        for(int i=1;i<=5;i++){
            sum = sum +i;
        }
        System.out.println(sum);
    }
}

五 循环结构——while循环

初始化语句;

while(条件判断语句){

循环体语句;

条件控制语句;

}

do...while循环

初始化语句;

do{

循环体语句;

条件控制语句;

}while(条件判断语句);

  • 至少会执行一次循环体语句

while与for循环的对比:

两者运行规则相同;

for循环中,控制循环的变量归属于for循环的语法结构,在循环结束后就不能再次被访问了。而在while循环中,该变量独立于循环体之外,该变量在循环结束后可以继续使用。

for循环用于知道循环次数或循环范围的情况;while循环用于不知道循环次数和范围,但知道循环结束条件的情况。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值