随机字符串排序

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

超级无敌大暴雨

2019-03-18 20:38

public void testSortRandomString(){
    List<String> list = new ArrayList<String>();
    Integer k;
    Random random = new Random();
    String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
    StringBuilder stringBuilder = new StringBuilder();
    for (int i = 0; i < 3; i++) {
        do {
            for (int a = 0; a < 10; a++) {
                k = random.nextInt(str.length());
                stringBuilder.append(str.charAt(k));
            }

        }while (list.contains(stringBuilder));
        System.out.println(stringBuilder);
        list.add(stringBuilder.toString());
        stringBuilder.delete(0,stringBuilder.length());
    }
    Collections.sort(list);
    System.out.println("===========排序后=============");
    for (String i:list) {
        System.out.println("元素:"+i);
    }
}


写回答 关注

1回答

  • qq_慕数据533744
    2019-07-27 17:52:55

    public void testSortString2() {

    List<String> stringList = new ArrayList<String>();

    Integer it;

    Random random = new Random();

    Random Long = new Random();

    String str = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";

    StringBuilder sb = new StringBuilder();

    for(int i = 0 ; i < 10 ; i++) {

    do {

    for (int j = 0 ,l=Long.nextInt(10);j<l; j++) {

    it = random.nextInt(str.length());

    sb.append(str.charAt(it));

    }

    }while(stringList.contains(sb));

    stringList.add(sb.toString());

    sb.delete(0, sb.length());

    }

    System.out.println("---------");

    for(String s : stringList) {

    System.out.println("元素:"+ s);

    }

    Collections.sort(stringList);

    System.out.println("---------");

    for(String s : stringList) {

    System.out.println("元素:"+ s);

    }

    }

    改了一下 可以不固定10个字符 

Java入门第三季

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

409792 学习 · 4340 问题

查看课程

相似问题