2.2 从键盘输入
使用 Scanner 读取字符串/整数/浮点数
import java.util.Scanner; // 需要导入 util 包 public class Cycle_logitic { public static void main(String[] args) { Scanner sc = new Scanner(System.in);//输入,sc 由用户自己定义 System.out.println("请输入你的姓名:");//输出 String name = sc.nextLine(); System.out.println("请输入你的年龄:"); int age = sc.nextInt(); System.out.println("请输入你的工资:"); float salary = sc.nextFloat(); System.out.println("你的信息如下:"); System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary); sc.close(); // 注意, 要记得调用关闭方法 }
🍤 运行结果:
使用 Scanner 循环读取 N 个数字,并求取其平均值
public static void main(String[] args) { Scanner sc = new Scanner(System.in); int sum = 0; int num = 0; while (sc.hasNextInt()) { int tmp = sc.nextInt();//输入 sum += tmp;//求和 num++; } //输出 System.out.println("sum = " + sum); System.out.println("avg = " + sum / num);//计算均值 sc.close(); }
🍤 运行结果:
🎊彩蛋
猜数字游戏
玩法:玩家随便输入1-100以内的整数,计算机会提示你是否猜对,如果没猜对,会告诉玩家是猜大了还是猜小了,然后用户继续猜数,直到成功。
程序设计关键:
- 如何设置 1-100 以内的随机数
- 判断随机数与用户输入的值的大小
- 在猜对前,用户如何循环输入数字
- 猜对后又如何结束循环
1. 在 Java 中设置随机数需要用到一个包:
import java.util.Random;
如果想要控制在 100 以内,代码实现是:
Random random = new Random(); // 默认随机种子是系统时间 int toGuess = random.nextInt(100);//设置范围:[0-100)+1
2. 用户输入数字:
上文已经总结过,如何输入一个数字。用户输入时也需要一个包:
import java.util.Scanner;
//实现输入数字 Scanner sc = new Scanner(System.in);//这里的 sc 由用户自定义
3. 判断用户输入的数字大小:
这里我们用 if 语句处理:
int num = sc.nextInt();//将输入的数字赋给 num if (num < toGuess) { System.out.println("低了"); } else if (num > toGuess) { System.out.println("高了"); } else { System.out.println("猜对了"); break;//跳出循环 }
4. 然后我们将代码整合一下:
import java.util.Scanner; import java.util.Random;
public static void main(String[] args) { Random random = new Random(); // 默认随机种子是系统时间 Scanner sc = new Scanner(System.in); int toGuess = random.nextInt(100); while (true) { System.out.println("请输入要输入的数字: (1-100)"); int num = sc.nextInt(); if (num < toGuess) { System.out.println("低了"); } else if (num > toGuess) { System.out.println("高了"); } else { System.out.println("猜对了"); break; } } sc.close(); }
🍤 运行结果:
这只是简易版的猜数字游戏,你还可以用 switch 语句去设置一个菜单选项控制游戏的开始等等功能,去美化你的游戏