查看: 1404|回复: 0

[Java学习] 6-5 应用 Collections.sort() 实现 List 排序

发表于 2018-2-2 08:00:02
  1. /***
  2. * 利用Collections.sort()方法对泛型为String的List进行排序
  3. * 1.创建List<String>之后,往其中添加十条随机字符串
  4. * 2.每条字符串的长度为10以内的随机整数
  5. * 3.每条字符串的每个字符都为随机生成的字符,字符可以重复
  6. * 4.每条随机字符串不可重复
  7. */
  8. public void testSort3() {
  9. List<String> strList = new ArrayList<>();
  10. String str;
  11. for(int i=0; i<10; i++) {
  12. do {
  13. str = addString();
  14. }while(strList.contains(str));
  15. strList.add(str);
  16. System.out.println("成功添加了字符串:"+str);
  17. }
  18. System.out.println("----------------------排序前-----------------------");
  19. int index = 1;
  20. for (String string : strList) {
  21. System.out.println("第"+(index++)+"个字符串:"+string);
  22. }
  23. Collections.sort(strList);
  24. index = 1;
  25. System.out.println("----------------------排序后-----------------------");
  26. for (String string : strList) {
  27. System.out.println("第"+(index++)+"个字符串:"+string);
  28. }
  29. }
  30. public String addString() {
  31. String seed = "QWERTYUIOPASDFGHJKLZXCVBNM0147258369qwertyuiopasdfghjklzxcvbnm";
  32. StringBuilder sb = new StringBuilder();
  33. Random random = new Random();
  34. int length = random.nextInt(10)+1;//生成字符串长度
  35. for(int i=0; i<length; i++) {
  36. int index = random.nextInt(seed.length()); //生成索引位置
  37. sb.append(seed.charAt(index));
  38. }
  39. return sb.toString();
  40. }
复制代码

图片描述



回复

使用道具 举报