Scanner类和Random类
Scanner类
Scanner类的功能:可以实现键盘输入数据,到程序中。属于引用类!
引用类型的一般使用步骤:
-
导包
import 包路径.类名称
如果需要使用的目标类和当前类位于同一个包下,则可以省略导包语句不写。
只有java.lang包下的内容不需要导包,其他的包都需要import语句。
-
创建
类名称 对象名 = new 类名称();
-
使用
对象名.成员方法名();
//1.导包
import java.util.Scanner;
/**
* 测试Scanner对象
* @author 86178
*/
public class TestScanner {
public static void main(String[] args) {
//2.创建一个扫描器,用于接收键盘的对象
Scanner s = new Scanner(System.in);
System.out.println("请输入你想输入的数字:");
System.out.println("输入不是数字时结束");
int i= 0;
double sum= 0.0;
//判断用户有没有输入字符
while(s.hasNextDouble()){
//3使用
double x = s.nextDouble();
i ++;
sum = sum + x;
System.out.println("你输入的数据为" + x + "现在总数为" + sum);
}
System.out.println("平均数为:" + (sum/i));
s.close();
}
}
Random类
Random 类的功能:属于工具类,可以产生随机数
import java.util.Random;
/**
* 测试随机类
* @author 86178
*/
public class TestRandom {
public static void main(String[] args) {
//获取一个随机的int数字,范围是所有int范围,有正负两种
Random random = new Random();
int num = random.nextInt();
System.out.println("随机数1是:" + num);
//获取一个随机数字(参数表示了范围,左闭右开区间)
// int num = r。nextInt();
// 实际上的含义是[0,999),也就是0~998
int num1 = random.nextInt(999);
System.out.println("随机数2是:" + num1);
}
}import java.util.Random;
/**
* 测试随机类
* @author 86178
*/
public class TestRandom {
public static void main(String[] args) {
Random random = new Random();
returnRandom(random);
returnRandom1(random);
returnRandom2(random);
}
/**
* 获取一个随机的int数字,范围是所有int范围,有正负两种
*/
public static void returnRandom(Random random){
int num = random.nextInt();
System.out.println("随机数1是:" + num);
}
/**
* 获取一个随机数字(参数表示了范围,左闭右开区间)
* int num = r。nextInt();
* 实际上的含义是[0,999),也就是0~998
* @param random
*/
public static void returnRandom1( Random random){
int num = random.nextInt(999);
System.out.println("随机数2是:" + num);
}
/**
* 要求:根据变量n的值,来获取随机数,范围是[1,n],可以取1,也可以去n
* 思路:1.定义一个int变量n,随意赋值
* 2.使用Random
* 3.如果是10,那么就是0~9,如果想要1~10,则,整体加一
* @param random
*/
public static void returnRandom2(Random random){
int num = 5;
for (int i = 0; i < 10; i++) {
int resultNum = random.nextInt(num) + 1;
System.out.println("数字" + i + ":" + resultNum);
}
}
}
用代码模拟猜数字的小游戏:
import java.util.Random;
import java.util.Scanner;
/**
* 用代码模拟猜数字的小游戏
* @author 86178
*/
public class RandomGame {
public static void main(String[] args) {
Random random = new Random();
//产生随机数
int ransomNum = random.nextInt(100) + 1;
Scanner scanner = new Scanner(System.in);
//只有十次机会
System.out.println("请输入你要猜测的数字(0-100之间),你只有10次机会");
for (int i = 0; i < 10; i++) {
//键盘输入的数字
int inputNum = scanner.nextInt();
if (inputNum > ransomNum){
System.out.println("数字太大,请重试。");
}else if (inputNum < ransomNum){
System.out.println("数字太小,请重试。");
}else {
System.out.println("恭喜猜对了!");
System.out.println("游戏结束!");
break;
}
}
}
}
结果:
随便写写!