Scanner、Ranner类

1.Scanner类

1)功能:帮助接收用户键盘输入的内容
2)使用方法:
  1.导入包:指定Scanner类的位置。java.util.Scanner
  2.创建Scanner类的对象。
  Scanner 名字 = new Scanner(S);
3.调用方法:
  名字.功能名字();
  功能名字:
  next类型 | nextInt |nextByte | nextDouble
  next() :接收字符串类型的数据
  以上一系列的next功能,从有效字符开始接收,遇到空格,tab键不接收了,直到遇到enter结束功能 enter不会接收。
  nextLine() :接收一整行的数据,接收enter结束,enter会被接收。
4) 关闭资源
  名字.close();

//1.导包
import java.util.Scanner;
public class Scanner{
	/**主方法*/
	public static void main(String[] args){
		//2.创建Scanner的变量|引用
		Scanner sc=new Scanner(System.in);
		//3.使用功能
		//int i=sc.nextInt();
		//int i=sc.nextByte();
		
		String s=sc.next();
		System.out.println("next()="+s);
		
		//处理系列next功能遗留的enter键
		sc.nextLine();
		
		String str=sc.nextLine();
		System.out.println("nextLine()="+str);
		
		//关闭
		sc.close();
	}	
}

2.Random类

1)功能:产生随机数
2)方法:
  nextInt() 随机产生一个int范围内的随机数
  nextInt(整数n) 随机产生一个 [0,n)整数
  nextDouble() 产生[0,1)之间的随机小数
3)公式:
  [min,max) ran.nextInt(max-min)+min;
  [min,max] ran.nextInt(max-min+1)+min;
Random产生的是一个伪随机数。

//导包
import java.util.Random;
public class Random{
	/**主方法*/
	public static void main(String[] args){
		//2.创建Random类型的变量
		Random ran=new Random();
		//3.nextInt()
		int num1=ran.nextInt();
		System.out.println(num1);
		
		//[0,4)
		num1=ran.nextInt(4);
		System.out.println(num1);
		//[1,5)  
		num1=ran.nextInt(5-1)+1;  //[1,5)
		System.out.println(num1);
		
		//[3,7]
		num1=ran.nextInt(7-3+1)+3;  //[0,4)+3->[3,7)
		System.out.println(num1);
		
		double d=ran.nextDouble()*2+1;
		System.out.println(d);
	}	
}

3.Math数据类

1)不需要导包:java.lang下的直接类不需要导包。
2)Math.random() 功能名字 [0,1)随机小数
公式:
  [0,max) 随机整数 (int)(Math.random()max)
  [0,max] 随机整数 (int)(Math.random()
(max+1))
  [min,max) 随机整数 (int)(Math.random()(max-min)+min)
  [min,max] 随机整数 (int)(Math.random()
(max-min+1)+min)
3)Math.round(数据) 四舍五入
4)Math.abs(数据); 绝对值
5)Math.sqrt(数据); 平方根 double类型的值

public class demo{
public static void main(String[] args){
		double num1=(int)Math.random();
		System.out.println(num1);
		
		//[0,5) 随机整数  最终的结果取整强转  
		int num2=(int)(Math.random()*5); //[0,1) *5  ->[0,5)
		
		//[0,5] 
		num2= (int)(Math.random()*(5+1));
		System.out.println(num2);
		
		//[3,7)
		num2= (int)(Math.random()*(7-3)+3);  //[0,4)+3 -->[3,7)
		System.out.println(num2);
		
		//四舍五入
		System.out.println(Math.round(3.49));
		System.out.println(Math.abs(-33.3));
		System.out.println(Math.sqrt(2));
		}
}

猜你喜欢

转载自blog.csdn.net/paiyangqin7359/article/details/94407307