Java基础入门之Random类和Random方法

开发 后端
本文主要介绍了Random类、Random()方法、Random(long seed)方法、包装类。

[[390166]]

大家好,我是Java进阶者,今天小编带大家一起来学习Java技术基础!

一、Random类

1.在java在指定范围内产生随机的数字就需要用到Random类。

2.Random类提供两个构造方法:

Random()方法:创建一个新的随机生成器;

Random(long seed)方法:使用单个long类型的seed种子创建新的随机生成器;

二、Random()方法

1.Random()方法是无参数的,它创建Random实例对象每次使用的种子是随机的,所以每个对象产生的随机数会不一样。

2.Random()方法例子

  1. import java.util.Random; 
  2. public class p62 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         Random r=new Random(); 
  6.         //产生10个(0,10)的随机数 
  7.         for(int i=0;i<10;i++){ 
  8.             System.out.println("第"+(i+1)+"个的随机数是"+r.nextInt(10)); 
  9.         } 
  10.     } 

运行的结果是:

三、Random(long seed)方法

1.Random(long seed)方法是有参数的,使用long类型的seed种子创建新的随机生成器。如果是多个Random实例对象产生一样的随机数,在创建实例对象时,传入一样的种子就可以了。

2.Random(long seed)方法例子

  1. import java.util.Random; 
  2. public class p62 { 
  3. public static void main(String[] args) { 
  4.         // TODO Auto-generated method stub 
  5.         Random r=new Random(5); 
  6.         //产生10个(0,10)的随机数 
  7.         for(int i=0;i<10;i++){ 
  8.             System.out.println("第"+(i+1)+"个的随机数是"+r.nextInt(10)); 
  9.         } 
  10.     } 

运行结果是:

第一次运行:

第二次运行:

四、包装类

1.在java中很多类的方法需要接收引用类型的对象,它就不能将一个基本数据类型值传入。解决这样的问题,JDK提供一系列的包装类,把基本数据类型的值包装成引用数据类型。

2.在java中每种的基本数据类型都有对应的包装类,如下图所示:

3.包装类和基本数据类型在转换时,引入装箱和拆箱的概念。装箱是基本数据类型的值转换引用数据类型,拆箱是引用数据类型的值转换基本数据类型。

4.int类型的包装类的例子:

  1. public class p74 { 
  2. public static void main(String[] args) { 
  3.         // TODO Auto-generated method stub 
  4.             int a=6; 
  5.             Integer i=new Integer(a); 
  6.             System.out.print(i.toString()); 
  7.     } 

运行的结果是:

从上面代码中,创建Integer对象,把int类型的变量a当作参数传入,再转换成Integer类型。

五、总结

本文主要介绍了Random类、Random()方法、Random(long seed)方法、包装类。

在java在指定范围内产生随机的数字就需要用到Random类。Random()方法是无参数的,它创建Random实例对象每次使用的种子是随机的,所以每个对象产生的随机数会不一样。

Random(long seed)方法是有参数的,使用long类型的seed种子创建新的随机生成器。包装类可以把基本数据类型的值包装成引用数据类型。希望大家通过本文的学习,对你有所帮助!

 

责任编辑:姜华 来源: Java进阶学习交流
相关推荐

2011-06-21 09:22:53

Random类

2021-04-05 08:11:04

Java基础Calendar类DateFormat类

2021-04-08 10:10:46

JavaSimpleDateFList接口

2021-03-22 09:56:01

Java基础System类Static

2021-04-22 09:57:37

Random方法游戏

2021-04-26 10:01:25

JavaJava基础Runtime

2020-11-19 10:36:16

Java基础方法

2021-02-08 08:45:18

Java内部类Object类

2022-05-27 08:16:37

Thread类Runnable接口

2022-12-15 08:54:28

JAVA性能JDK

2021-01-28 08:34:30

Java对象定义

2022-03-28 09:31:58

for循环语句

2020-12-24 08:36:14

JavaJava基础

2021-02-22 08:39:03

Java关键字Java基础

2021-04-01 10:01:55

JavaStringJava基础

2023-12-13 10:46:27

2022-03-10 09:33:21

Java数组初始化

2011-07-06 14:12:14

Objective-C

2021-03-25 10:02:31

Java基础字符串Java技术

2011-08-10 17:04:43

JavaScript
点赞
收藏

51CTO技术栈公众号