Java随机生成不重复的数组
由来
2022年11月1日
实验室举办了一个“每日一题”的算法活动,我负责出题,今天出第二天的题目,是一个数组排序的题目,为了保证测试程序的正确性,需要测试大量的数据,如果手动来生成测试数据的话,那不得累死而且数据可用性不大。
我想到了写一个程序来生成随机数据,应题目的要求,生成一个无序的数组且元素不能重复,在网上搜了一下,发现网上的答案好乱,但整体的思路是有了
源程序
思路:利用Java中的Random类来随机生成数据,同时利用Set集合的特性来存储这些数据。
看代码
import java.util.HashSet; import java.util.Random; import java.util.Scanner; /** * @ClassName : RandomArray //类名 * @Description : 生成随机数组 //描述 * @Author : 刘明凯的专属computer //作者 * @Date: 2022/11/1 0001 19:16 */ public class RandomArray { public static void main(String[] args) { Scanner sc = new Scanner(System.in); Random random = new Random(); // size表示生成数据的多少 int size = sc.nextInt(); HashSet<Integer> set = new HashSet<>(); int temp; while(size-- > 0) { boolean f = false; while(!f){ temp = random.nextInt(1000); f = set.add(temp); } } for (Integer t : set) { System.out.print(t + " "); } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· 单线程的Redis速度为什么快?
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码