第二章:基本语法
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的使用范围更广。
若有错误,请私信指正!