Java基础之引用数据类型
Scanner类
-
属于引用数据类型的一种,可以使用该类完成键盘录入,获取到录入的数据。
-
数据类型/类 变量名 = new 数据类型/类();
有参构造:有参数的构造函数
无参构造:无参数的构造函数在用Scanner这个类之前,需导入import java.util.Scanner;这个包
完整用法`
第一步:实例化Scanner
Scanner scanner = new Scanner(System.in);
第二步:变量名.方法名()
调用scanner.nextXXX()去获取到对应的数据类型
int i = scanner.nextInt(); -
next()和nextLine()
-
next()方法在读取内容时,会过滤掉有效字符前面的无效字符,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其过滤掉;只有在读取到有效字符之后,next()方法才将其后的空格键、Tab键或Enter键等视为结束符;所以next()方法不能得到带空格的字符串.
-
nextLine()方法字面上有扫描一整行的意思,它的结束符只能是Enter键,即nextLine()方法返回的是Enter键之前没有被读取的所有字符,它是可以得到带空格的字符串的。
Scanner sc = new Scanner(system.in);//这个就是输入了
System.out.println("请输入一个你想要的数:")
int num1 = sc.nextInt();//获取整型
System.out.println("你想要的整型数字是:"+num1);
float num2 = sc.nextFloat();//获取浮点型
System.out.println("你想要的浮点型数字是:"+num2);
String str1 = sc.nextLine();//获取\r\n
/*因为读取的是字符串,读取浮点型之后,还需要读取回车换行,
这也属于字符串,所以需要读取两次,第二次才是你想要的字符串*/
String str1 = sc.nextLine();//获取字符串
System.out.println("你想要的字符串是:"+str1);
Random类
-
java.lang.Math.Random;
调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间
所以需要强制转换成int类型,*3表示在[0.0,3.0)取值 -
java.util.Random;
步骤:导入import java.util.Random包
第一步:创建Random类的实例
Random random = new Random(25);//初始化时25并没有起直接作用(注意:不是没有起作用)第二步:将随机整数赋值给i变量
int i = random.nextInt(100);//100是随机数的上限,产生的随机数为0-100的整数,不包括100(和Math.random()一样)
or
//生成10000以内在5~101(不包括101)的随机数
for(int j = 0;j < 10000ji++){
i = random.nextInt(96)+5;
System.out.println(i);
} -
其他精度范例:
-
两者区别:
上一篇: Effective C++ item 5
下一篇: Linux汇编GAS调用C语言函数实例