51,411
社区成员
发帖
与我相关
我的任务
分享
import java.util.Random;
public class Arbitrarily
{
public static void main(String[] args)
{
int [] tdarr= new int[35];
for (int i = 0;i < 35;i++ )
{
tdarr[i] =i+1;
}
Random r=new Random();//建立
for (int j = 0;j <= 7;j++)
{
int a = r.nextInt(tdarr[34]);
System.out.println(a);
remove(tdarr[34],a);
}
}
private static void remove(int i, int a)
{
}
}
创建数组,之后在数组里创建随机数,并且获取取值之后将他移除 在重写在数组里获取
import java.util.ArrayList;
import java.util.Random;
public class Arbitrarily
{
public static void main(String[] args)
{
ArrayList<Integer> aL=new ArrayList<Integer>();
int [] tdarr= new int[35];
for (int i = 0;i < 35;i++ )
{
tdarr[i] =i+1;
aL.add(tdarr[i]);
}
for (int j = 1;j <=7;j++)
{
Random r=new Random();//建立
int a = r.nextInt(aL.size());
System.out.print(aL.get(a)+",");
aL.remove(a);
}
}
}
大佬看看有什么地方可以优化下
import java.util.ArrayList;
import java.util.Random;
public class Arbitrarily
{
public static void main(String[] args)
{
ArrayList<Integer> aL=new ArrayList<Integer>();
int [] tdarr= new int[3];
for (int i = 0;i < 3;i++ )
{
tdarr[i] =i+1;
aL.add(tdarr[i]);
}
for (int j = 1;j <= 2;j++)
{
Random r=new Random();//建立
int a = r.nextInt(aL.size());
System.out.println(a);
aL.remove(a);
}
}
}
优化成这样也不行
HashSet<Integer> list = new HashSet();
ArrayList<Integer> arr = new ArrayList<>();
Random a = new Random();
while (list.size() < 7){
int i = a.nextInt(35);
if (i!=0) list.add(i);
}
arr.addAll(list);
System.out.println(arr);我做了一些改动,不过那位大佬是对的