JavaSE基础语法--傻瓜笔记--1014(第二章:控制台输入——条件语句)

第二章:基本语法

10.控制台输入

使用标准输入串System.in

使用Scanner取得一个字符或一组数字

在自己的类中使用别的类,需要使用import导入别的类

如:import java.util.Scanner;

每创建一个Scanner对象,都要传入一个输入流对象。

如:Scanner s = new Scanner(System.in);

Scanner中的几种方法:

next() 用以取得字符串

nextInt() 将取得的输入字符串转换为整数类型

nextFloat() 将取得的输入字符串转换为float类型

nextDouble() 将取得的输入字符串转换为double类型

具体语法如下:

import java.util.Scanner;

public class ScannerDemo {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);
        int height = nextInt();
    }
}

11.条件语句

根据条件不同,执行的语句不同。

  • if(条件表达式){表达式返回true,执行此语句块}else{表达式返回false,执行此语句块}
  • if( ){ }else if( ){ }
  • if( ){ }else if( ){ }else{只有以上的表达式全部为false时,才能执行此语句块}

条件表达式必须是一个返回布尔结果的表达式。

分支语句(switch):

多分支选择语句,根据表达式的值,来执行多个操作中的一个。

switch(表达式){
    case value1:语句序列1;
        [break];
    …………
    case valueN:语句序列N;
        [break];
        [default : 缺省语句;]
}

表达式可以是byte,short,int,char,枚举类型。JDK7之后,可以使用String类型;

case语句后面只能使用常量表达式;

case后的值不能重复;

如果某个case分支没有提供break语句,则继续执行下一个case后的语句;

当表达式的值与任一case句中的值都不匹配时,将执行default后面的语句;如果没有default子句,则程序直接跳出switch语句。

具体操作如下:

import java.util.Scanner;

public class IfDemo {
    public static void main(String[] args) {
        Scanner s = new Scanner(System.in);

        int money = 10000;
        System.out.println("请输入账号:");
        int account = s.nextInt();
        System.out.println("请输入密码:");
        int password = s.nextInt();

        if (account == 666 && password == 123) {
            while (true) {
                System.out.println("请选择服务项目:1.取款 2.存款 3.转账 0.退出");
                int select = s.nextInt();
                if (select == 0) {
                    break;
                }
                switch (select) {
                    case 1:
                        System.out.println("请输入取款金额:");
                        int outMoney = s.nextInt();

                        if (money >= outMoney) {
                            System.out.println("取款成功!");
                            money = money - outMoney;
                            System.out.println("您目前余额为:" + money);
                        } else {
                            System.out.println("您的余额不足!!!");
                        }
                        break;
                    case 2:
                        System.out.println("请输入存款金额:");
                        int inMoney = s.nextInt();

                        System.out.println("存款成功!");
                        money += inMoney;
                        System.out.println("您目前余额为:" + money);
                        break;
                    case 3:
                        System.out.println("请输入转账账号:");
                        int transfer = s.nextInt();
                        System.out.println("请输入转账金额:");
                        int transferMoney = s.nextInt();
                        System.out.println("转账成功!");
                        money = money - transferMoney;
                        System.out.println("您目前余额为:" + money);
                        break;
                    default:
                }
            }
        } else {
            System.out.println("账号或密码错误!");
        }
    }
}
if语句和switch语句的对比

①如果判断的具体数值不多,而且符合byte,short,int,char这四种类型。建议使用switch语句,因为效率更高一点。

对区间判断,对结果为boolean类型判断,使用if,if的使用范围更广。

若有错误,请私信指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值