课后的思考题,随机生成长度10以内的字符串,自己写了一下,仅供参考

来源:6-5 应用 Collections.sort() 实现 List 排序

shoumananxun

2015-06-03 01:04

/*
	 * 生成指定长度内的随机字符串
	 * @params  length 
	 * return random String
	 */
	public String getRandomString(int length){
		 String base="abcdefghigklmnopkrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ0123456789";
		 StringBuilder sbBuilder = new StringBuilder();
		 Random random = new Random();
		 int finalLength = random.nextInt(length) + 1;
		 for(int i = 0; i < finalLength; i++){
			 int index = random.nextInt(base.length());
			 sbBuilder.append(base.charAt(index));
		 }
		 return sbBuilder.toString();
	}
	
	public void testSort2(){
		List<String> stringlist = new ArrayList<String>();
		Random random = new Random();
		for(int i = 0; i < 10; i++){
			String string;
			do{
				string = getRandomString(10);
			}while(stringlist.contains(string));
			stringlist.add(string);
			System.out.println("成功添加数:" + string);
		}
		System.out.println("排序前--------------");
		for(String string:stringlist){
			System.out.print(string + ",");
		}
		System.out.println();
		System.out.println("排序后--------------");
		Collections.sort(stringlist);
		for(String string:stringlist){
			System.out.print(string + ",");
		}
		
	}


写回答 关注

3回答

  • Songlw
    2015-07-23 16:35:22

    代码不错,谢谢分享!

  • qq_Faraward_0
    2015-07-13 14:08:43

    如果i=0和i=1的获得值是一样,是不是最终添加到 stringlist中的元素就只有9个?

    Songlw

    如果是指后面一个方法里面的i,则为9个元素。

    2015-07-23 16:38:32

    共 1 条回复 >

  • 伊兮尘昔
    2015-06-03 10:45:20

    不错的代码,可以参考一下

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409771 学习 · 4388 问题

查看课程

相似问题