Scanner:键盘输入功能的实现、Java程序获取一个随机数

目录

一、 Scanner:键盘输入功能的实现

二、Java程序获取一个随机数


一、 Scanner:键盘输入功能的实现

如何从键盘获取不同类型(基本数据类型、String类型)的变量:使用Scanner类

键盘输入代码的四个步骤:

①导包:import java.util.Scanner;

②创建Scanner类型的对象:Scanner scan = new Scanner(System.in)

③调用Scanner类的相关方法(next()/nextXxx()),来获取指定类型的变量

④释放资源:scan.close();

注意:需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配时,会报异常,导致程序终止。

各种数据类型的输入:

//案例:小明注册某交友网站,要求录入个人相关信息。如下:
//请输入你的网名、你的年龄、你的体重、你是否单身、你的性别等情况。
//① 导包
import java.util.Scanner;
public class ScannerTest1{
 public static void main(String[] args){
 //② 创建 Scanner 的对象
 //Scanner 是一个引用数据类型,它的全名称是 java.util.Scanner
 //scanner 就是一个引用数据类型的变量了,赋给它的值是一个对象(对象
的概念我们后面学习,暂时先这么叫)
 //new Scanner(System.in)是一个 new 表达式,该表达式的结果是一个对
象
 //引用数据类型 变量 = 对象;
 //这个等式的意思可以理解为用一个引用数据类型的变量代表一个对象,所
以这个变量的名称又称为对象名
 //我们也把 scanner 变量叫做 scanner 对象
 Scanner scanner = new Scanner(System.in);//System.in 默认代表键
盘输入
 
 //③根据提示,调用 Scanner 的方法,获取不同类型的变量
 System.out.println("欢迎光临你好我好交友网站!");
 System.out.print("请输入你的网名:");
 String name = scanner.next();
 System.out.print("请输入你的年龄:");
 int age = scanner.nextInt();
 System.out.print("请输入你的体重:");
 double weight = scanner.nextDouble();
 System.out.print("你是否单身(true/false):");
 boolean isSingle = scanner.nextBoolean();
 System.out.print("请输入你的性别:");
 char gender = scanner.next().charAt(0);//先按照字符串接收,然后
再取字符串的第一个字符(下标为 0)
 System.out.println("你的基本情况如下:");
 System.out.println("网名:" + name + "\n 年龄:" + age + "\n 体
重:" + weight +
 "\n 单身:" + isSingle + "\n 性别:" + gende
r);
 
 //④ 关闭资源
 scanner.close();
 }
}

二、Java程序获取一个随机数

如何产生一个指定范围的随机整数?

①Math类的random()的调用,会返回一个[0,1)范围的一个double型值

②例:Math.random()*100--->[0,100)

(int)(Math.random()*100)--->[0,99]

(int)(Math.random()*100)+5---->[5.104]

③:如何获取[a,b]范围内的随机整数呢?

(int)(Math.random()*(b-a+1))+a

例:

class MathRandomTest {
    public static void main(String[] args) {
        double value = Math.random();
        System.out.println(value);
        //[1,6]
        int number = (int)(Math.random() * 6) + 1; //
        System.out.println(number);
    }
}

猜你喜欢

转载自blog.csdn.net/Starinfo/article/details/135460177