java 编程随机生成20个80以内的数,不允许有重复的数据,存放到数组中,最后输出 代码

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 编程随机生成20个80以内的数,不允许有重复的数据,存放到数组中,最后输出 代码相关的知识,希望对你有一定的参考价值。

急求

生成随机数可以java.util.Random类的nextInt(int)方法来生成,如果要不重复,可把这些数放入Set集合中,会自动去重。下面是代码:
import java.util.*;

public class Test

public static void main(String[] args)

Set<Integer> set=new HashSet<Integer>();
Random r=new Random();
do

int i=r.nextInt(80);
set.add(i);
while(set.size()<20);
Integer[] arr=new Integer[20];
set.toArray(arr);
for(int a=0;a<arr.length;a++)
System.out.print(arr[a]+" ");

参考技术A import java.util.Random;

public class Test  
private int[] num = new int[20];
private int idx = 0;

public void push(int n) 
if (idx < 20)
num[idx++] = n;


public boolean hasExist(int n) 
for (int i = 0; i < idx; i++)
if (num[i] == n)
return true;
return false;


public int size() 
return idx;


public void print() 
for (int i = 0; i < idx; i++)
System.out.print(num[i] + " ");
System.out.print("\\n");


public static void main(String[] args) 
Test t = new Test();
while (t.size() < 20) 
Random r = new Random();
int n = r.nextInt(101);
if (!t.hasExist(n))
t.push(n);

t.print();

参考技术B /**
* If the given graphs are isomorphic, returns a map between the vertex sets witnessing the isomorphism. If
* the given graphs are not isomorphic, returns null.
* @param a

* @param b
* @return
*/
public static Map<String, String> getIsomorphicMap(UndirectedGraph<String, DefaultEdge> a, UndirectedGraph<String, DefaultEdge> b)

参考技术C 童鞋你好!
这个估计需要自己搜索了!
网上基本很难找到免费给你服务的!
我在这里给你点搜索,

随机打印10个1到10以内的数

shell代码1:
#!/bin/bash
a=($(($RANDOM%10+1)))
e=0
while :
do
    b=$(($RANDOM%10+1))
    c=0
    for i in ${a[*]}
    do
        if [ $i -eq $b ];then
            c=1
        fi
    done
    if [ $c -eq 0 ];then
            a[$e]=$b
            let e++
    fi
    d=${#a[*]}
    if [ $d -eq 10 ];then
        break
    fi
done
echo ${a[*]}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
shell代码2:
#!/bin/bash
a=(1 2 3 4 5 6 7 8 9 10)
while :
do
    b=$(($RANDOM%10))
    if [ "${a[$b]}" != "" ];then
        echo  ${a[$b]}
        unset a[$b]
    fi
    [ ${#a[*]} -eq 0 ] && break
done
#!/bin/bash
a=(1 2 3 4 5 6 7 8 9 10)
while :
do
    b=$(($RANDOM%10))
    [ "${a[$b]}" != "" ] && echo ${a[$b]} && unset a[$b]
    [ ${#a[*]} -eq 0 ] && break
done
#!/bin/bash
for i in {1..10};do
    echo "$RANDOM $i" >> /tmp/ran.txt
done
sort -n /tmp/ran.txt|awk ‘{print $2}‘
rm -rf /tmp/ran.txt
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
python代码:
#!/usr/bin/env python
import random
l=range(1,11)
random.shuffle(l)
print l

本文出自 “CrazyWing” 博客,转载请与作者联系!

以上是关于java 编程随机生成20个80以内的数,不允许有重复的数据,存放到数组中,最后输出 代码的主要内容,如果未能解决你的问题,请参考以下文章

php封装生成随机数函数

二柱子之随机四则运算

js从数组中随机获取n个不重复的数据

VB编程:随机产生10个100以内的数,并存放在A数组中,求A数组中的最大数及其所对应的下标。

软件工程实验一--编程随机生成30个四则运算,算数包括100以内的整数和真分数。

java中怎么求随机产生50个10以内的整数,输出其中重复次数最多的数?