Scannner类
一个可以使用正则表达式来解析基本类型和字符串的简单文本扫描器。
Scannner使用分隔符模式将其输入分解为标记,默认情况下该分隔符模式与空白匹配。然后可以使用不同的 next 方法将得到的标记转换为不同类型的值。
例如:
Scanner sc = new Scanner(System.in);
int i = sc.nextInt();
Scanner sc = new Scanner(new File("myNumbers"));
while (sc.hasNextLong()) {
long aLong = sc.nextLong();
}
String input = "1 fish 2 fish red fish blue fish";
Scanner s = new Scanner(input).useDelimiter("\\s*fish\\s*");
System.out.println(s.nextInt());
System.out.println(s.nextInt());
System.out.println(s.next());
System.out.println(s.next());
s.close();
Scanner类,这是一个用于扫描输入文本的新的实用程序。
Random类
在JDK的java.util包中有一个Random类,他可以在指定的取值范围内随机产生数字。在Random类中有两种构造方法
Random() 无参构造方法,用于创建一个伪随机数生成器。
Random(long seed) 有参构造方法,使用一个long类型的seed种子创建伪随机数生成器。
Random中共有两种构造方法
1、public Random()
此构造方法是以系统自身的时间为种子数来构造Random对象。
2、public Random(long seed)
此构造方法可以自己来选定具体的种子来构造Random对象。
例:猜数字
package back;
import java.util.Random;
import java.util.Scanner;
public class Test01 {
public static void main(String[] args){
Scanner scanner=new Scanner(System.in);
Random random=new Random();
int num=random.nextInt(100)+1;
int count=1;
do {
System.out.println("请输入你猜的数字:");
int input=scanner.nextInt();
if (input>num){
System.out.println("猜大了!");
}else if (input<num){
System.out.println("猜小了!");
}else {
System.out.println("恭喜你猜对了!");
break;
}
count++;
}while (true);
System.out.println("本次游戏共才对了"+count+"次。");
}
}