1. Scanner
1.1 代码示例:
//1.导包,其实就是先找到Scanner这个类在哪
import java.util.Scanner;
public class ScannerDemo1{
public static void main(String[] args){
//2.创建对象,其实就是申明一下,我准备开始用Scanner这个类了。
Scanner sc = new Scanner(System.in);
//3.接收数据
//当程序运行之后,我们在键盘输入的数据就会被变量i给接收了
System.out.println("请输入一个数字");
int i = sc.nextInt();
System.out.println(i);
}
}
1.2 方法解释
1)next()、nextLine()
可以接受任意数据,但是都会返回一个字符串。
比如:键盘录入abc,那么会把abc看做字符串返回。
键盘录入123,那么会把123看做字符串返回。
Scanner sc = new Scanner(System.in);
String s = sc.next();//录入的所有数据都会看做是字符串
System.out.println(s);
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();//录入的所有数据都会看做是字符串
System.out.println(s);
//以后我们如果想要键盘录入,不管什么类型,统一使用nextLine
//特点:遇到回车才停止
2)nextInt():
只能接受整数。
比如:键盘录入123,那么会把123当做int类型的整数返回。
键盘录入小数或者其他字母,就会报错。
Scanner sc = new Scanner(System.in);
int s = sc.nextInt();//只能录入整数
System.out.println(s);
3)nextDouble():
能接收整数和小数,但是都会看做小数返回。
录入字母会报错。
Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();//录入的整数,小数都会看做小数。
//录入字母会报错
System.out.println(d);
1.3 方法细节
next(),nextInt(),nextDouble()在接收数据的时候,会遇到空格,回车,制表符其中一个就会停止接收数据。
Scanner sc = new Scanner(System.in);
double d = sc.nextDouble();
System.out.println(d);
//键盘录入:1.1 2.2
//注意录入的时候1.1和2.2之间加空格隔开。
//此时控制台打印1.1
//表示nextDouble方法在接收数据的时候,遇到空格就停止了,后面的本次不接收。
nextLine()方法是把一整行全部接收完毕。*遇到回车 才会停止*
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
System.out.println(s);
//键盘录入a b(注意a和b之间用空格隔开)
//那么nextLine不会过滤前面和后面的空格,会把这一整行数据全部接收完毕。
2. Random
使用步骤:
2.1 导包
import java.util.Random;
导包的动作必须出现在类定义的上边。
2.2 创建对象
Random r = new Random ();
上面这个格式里面,只有r是变量名,可以变,其他的都不允许变。
2.3 生成随机数
int number = r.nextInt(随机数的范围);
上面这个格式里面,只有number是变量名,可以变,其他的都不允许变。 随机数范围的特点:从0开始,不包含指定值。比如:参数为10,生成的范围[0,10)
import java.util.Random;
public class Test06 {
public static void main(String[] args) {
Random r = new Random();
double d1 = r.nextDouble(); // 生成[0,1.0]区间的小数
double d2 = r.nextDouble() * 7; // 生成[0,7.0]区间的小数
int i1 = r.nextInt(10); // 生成[0,10]区间的整数
int i2 = r.nextInt(18) - 3; // 生成[-3,15)区间的整数 [0,18)整体减3
long l1 = r.nextLong(); // 生成一个随机长整型值
boolean b1 = r.nextBoolean(); // 生成一个随机布尔型值
float f1 = r.nextFloat(); // 生成一个随机浮点型值
System.out.println("生成的[0,1.0]区间的小数是:" + d1);
System.out.println("生成的[0,7.0]区间的小数是:" + d2);
System.out.println("生成的[0,10]区间的整数是:" + i1);
System.out.println("生成的[-3,15]区间的整数是:" + i2);
System.out.println("生成一个随机长整型值:" + l1);
System.out.println("生成一个随机布尔型值:" + b1);
System.out.println("生成一个随机浮点型值:" + f1);
System.out.print("下期七星彩开奖号码预测:");
for (int i = 1; i < 8; i++) {
int num = r.nextInt(9); // 生成[0,9]区间的整数
System.out.print(num);
}
}
}
2.4 代码示例:
//1.导包
import java.util.Random;
public class RandomDemo1 {
public static void main(String[] args) {
//2.创建对象
Random r = new Random();
//3.生成随机数
int number = r.nextInt(100);//包左不包右,包头不包尾
//0 ~ 99
System.out.println(number);
}
}
欢迎大家指点评论~ 点赞+关注⭐⭐⭐