java中 如何利用数组存储随机生成数
发布时间:2025-05-25 07:40:31 发布人:远客网络
一、java中 如何利用数组存储随机生成数
java中随机数主要有两种方法生成:
方法1调用方便,但功能简单,并且不能初始化种子值,随机性不够好。生成的随机数是0.0到1.0间的浮点数,往往需要进行值域变换。
方法2调用复杂,功能强大,可初始化种子子,随机性好。可直接生成较大随机整数。
方法1:(int)(Math.floor(Math.random()*21))
方法2:Random rnd=new Random(System.currentTimeMillis());
使用new创建好数组后,依次将随机值赋值与数组元素即可
二、在Java中,如何检测一个数组中是否包含某一个数据
在Java中,检测一个数组是否包含某一个数据,通常有四种方法:
(2)转换为List,调用Arrays.asList(arr).contains方法
(4)使用Arrays.binarySearch()方法
下面为上述四种方法的具体代码实现:
publicstaticbooleanuseLoop(String[]arr,StringtargetValue){
2、转换为List,调用Arrays.asList(arr).contains方法
publicstaticbooleanuseList(String[]arr,StringtargetValue){
returnArrays.asList(arr).contains(targetValue);
publicstaticbooleanuseSet(String[]arr,StringtargetValue){
Set<String>set=newHashSet<String>(Arrays.asList(arr));
returnset.contains(targetValue);
4、使用Arrays.binarySearch()方法
特别说明:binarySearch()二分查找仅适用于有序数组,如果不是有序数组,则报异常
publicstaticbooleanuseArraysBinarySearch(String[]arr,StringtargetValue){
inta=Arrays.binarySearch(arr,targetValue);
Java种List列表的contains方法:
该方法是通过遍历集合中的每一个元素并用equals方法比较是否存在指定的元素。
publicbooleancontains(Objecto){
Iterator<E>it=iterator();
参考资料来源:Java官网-API-Arrays
参考资料来源:Java官网-API-InterfaceList
三、java 产生随机不重复的数组
1、最简单(最快想到)的实现的实现方法:
2、首先创建一个数组,并为每个元素赋值-1;因为楼主要求从[0,n-1]中取数呀
3、其次for循环,随即取值依次填入数组中。
4、最后,在上面的for循环中加入判断语句,看随即产生的数是否与之前的数相同,如不相同,则添加,如相同,则将循环数减一,再次循环。就OK了
5、public int[] RandNum(int m, int n){
6、当然还有其他思路,楼主可以自己开拓!