一,random
1.调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。例子如下:
package Test;
import java.util.Random;
public class TestRandom {
public static void main(String[] args) {
// 案例1
System.out.println("Math.random()=" + Math.random());// 结果是个double类型的值,区间为[0.0,1.0)
int num = (int) (Math.random() * 3); // 注意不要写成(int)Math.random()*3,这个结果为0,因为先执行了强制转换
System.out.println("num=" + num);
/**
* 输出结果为:
*
* Math.random()=0.02909671613289655
* num=0
*
*/
}
}
创建一个random()函数
Random random = new Random();
随机生成一个整数
int i=random.nextInt();
随机生成一个小数
double a=random.nextDouble();
二,Scanner的用法
1. java.util.Scanner 是 Java5 的新特征,我们可以通过 Scanner 类来获取用户的输入。
2.创建Scanner的基本语法
Scanner sc=new Scanner(System.in);
如何使用
1.可以输入字符
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 从键盘接收数据
// next方式接收字符串
System.out.println("请输入一个字符:");
String a=sc.next();
//然后返回这个字符
System.out.println("这个字符是:"+a);
}
}
2.可以输入整数
import java.util.Scanner;
public class ScannerDemo {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// 从键盘接收数据
// nextInt方式接收整数
System.out.println("请输入一个整数:");
int a=sc.nextInt();
//然后返回这个整数
System.out.println("这个字符是:"+a);
}
}
三,使用Scanner和Random完成一个猜数字小游戏
package test01;
import java.util.Random;
import java.util.Scanner;
public class Demo2 {
public static void main(String[] args) {
//使用Scanner和Random完成一个小游戏,猜1-100之间的数字
Scanner sc=new Scanner(System.in);
Random rd=new Random();
int count=0;
int num=rd.nextInt(100)+1;//随机100个数字0-99,然后+1就是1-100
do {
System.out.println("请输入整数");
int n=sc.nextInt();
if (n>num){
System.out.println("猜大了");
}else if(n<num){
System.out.println("猜小了");
}else{
System.out.println("恭喜你,猜对了!");
break;
}
count++;
}while(true);
//结果循环表示用户猜对
System.out.println("你猜对的数字"+num+"使用了"+count+"次");
}
}
结果如下
请输入整数
56
猜小了
请输入整数
86
猜大了
请输入整数
75
猜小了
请输入整数
80
猜小了
请输入整数
82
猜小了
请输入整数
85
恭喜你,猜对了!
你猜对的数字85使用了5次
w