问答详情
源自:6-5 应用 Collections.sort() 实现 List 排序

java 入门第三季的6-5 作业, 希望大家指点


    public static void main(String[] args) {
        // TODO Auto-generated method stub
        List<String> StringList = new ArrayList<String>();
          String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
             Random random=new Random();
             
             for (int j = 0; j < 10; j++) {
                 /*
                  * 限制生成个数为10个
                  */
                   StringBuffer sb=new StringBuffer();
                   int c;
                   do{
                   do{
              c = random.nextInt(10);
              if(!(c==0)){
                  /*
                   * 防止字符串长度为0
                   */
             for(int i=0;i<c;i++){
                 /*
                  * 生成一个长度为10字内的随机字符串
                  */
                   int number=random.nextInt(62);
                   sb.append(str.charAt(number));
             }
                  
             
              }
                   }while(c==0);
                   }while (StringList.contains(sb.toString()));
                   StringList.add(sb.toString());
             }
             System.out.println("排序前");
        for (String integer : StringList) {
            String t = integer;
            System.out.println(t);
        }
        System.out.println("排序后");
        Collections.sort(StringList);
        for (String integer : StringList) {
            String t = integer;
            System.out.println(t);
        }
        }

提问者:qq_逆时针_1 2017-04-23 14:56

个回答

  • qq_光景_0
    2017-07-13 14:41:29

    不应该是61 (0到61)吗?26个大写,26个小写,10个数字

  • dakela
    2017-04-25 17:02:10

    int number=random.nextInt(62);这个62指的是什么

  • 陈迪0
    2017-04-25 16:58:14

         String str="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";要车个干嘛?你的字符串也太局限了,标点符号什么的不也可以

  • dakela
    2017-04-25 16:49:08

    可以我问一下这个62是什么吗

  • 啊啊4010576
    2017-04-23 21:25:04

    嗯。。。。