两个工具类Scanner,Random的使用
一.Scanner类
1.Scanner类介绍
Scanner类是java5中引进的一个类,添加在java.util这个包中,这是一个用于扫描输入文本的实用工具。 简单的说Scanner类可以用于获取键盘输入,它可以从文件,字符串,输入流中解析出基本类型值和字符串 值。
2.Scanner类的使用
使用方法:
1.导包:import java.util.Scanner;
2.创建Scanner类的实例对象
Scanner sc = new Scanner(System.in);//标准输入设备
3.获取数据,通过使用Scanner实例对象的不同方法,可以获取不同的数据类型
例:int num = sc.nexInt();
部分功能代码:
//创建Scanner的实例对象
Scanner scanner = new Scanner(System.in);
System.out.println("请输入整数:");
//调用方法
int i = scanner.nextInt();
System.out.println(i);
System.out.println("请输入字符串:");
String s = scanner.next();
System.out.println(s);
//处理遗留的enter问题
scanner.nextLine();
System.out.println("请输入一行:");
String st = scanner.nextLine();System.out.println(st);
//关闭资源
sc.close();
输出:
3.Scanner类常用方法
返回类型 | 方法名 | 说明 |
---|---|---|
String | next() | 接受用户从键盘输入的字符串,从有效字符开始接受,遇到空格停止接受,直到接受的回车命令结束功能 |
String | nextLine() | 接受用户输入的一整行内容,包含空格,收到回车命令借宿功能 |
int | nextInt() | 接受用户从键盘输入的int类型的整数 |
byte | nextByte() | 接受用户从键盘输入的byde类型的整数 |
long | nextLong() | 接受用户从键盘输入的long类型的整数 |
float | nextFloat() | 接受用户从键盘输入的单精度浮点数 |
double | nextDouble() | 接受用户从键盘输入的双精度浮点数 |
PS:重点说明一下next()和nextLine()的区别
next():输入的有效字符前的空格会忽视,读取到下一个空格就会停止接受。不能读取两个由空格或符号 隔开的单词。
nextLine():读取输入,包括单词之间的空格和除空格以外的所有符号,读到这一行行尾。(使用 nextLine()之前如果存在系列next方法,需要处理遗留的回车问题)
二.Random类
1.Random类介绍
Random类存在于java.util包中,这个类主要用来帮我们生成随机数,不过生成的随机数是伪随机数,也 就是有规律的随机。在进行随机时,随机算法的起源数字称为种子数(seed),在种子数的基础上进行一定的变 换,从而产生需要的随机数字。相同种子数的Random对象,相同次数生成的随机数字是完全相同的。也就 是说,两个种子数相同的Random对象,第一次生成的随机数字完全相同,第二次生成的随机数字也完全相 同。这点在生成多个随机数字时需要特别注意。
2.Random类使用
使用方法:
1.导包:
import java.util.Random;
2.创建实例对象:
Random ran = new Random();
3.调用方法:
例:ran.nextInt(); //产生int范围内的随机整数
ran.nextInt(n);产生[0,n)范围内的随机整数
3.Random类常用方法
返回类型 | 方法名 | 说明 |
---|---|---|
boolean | nextBoolean() | 生成一个随机的boolean值,生成true和false的几率各50% |
double | nextDouble() | 生成一个随机double值,介于[0,1.0) |
int | nextInt() | 生成一个介于int范围内的随机整数 |
int | nextInt(int n) | 生成一个介于[0,n)范围内的随机整数 |