手记

Java第三季老师布置的作业:随机字符串

前面的大同小异,我直接上核心算法就好了

public void testSort3(){
        List<String> stringList = new ArrayList<String>();
        String randomStr = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
        //输入10以内随机数
        Random random = new Random();
        for(int i = 0; i < 10;i++){
            StringBuilder builStr = new StringBuilder();
            int sort = random.nextInt(10)+1;//random生成的是类似[0,1),左包含又不包含的数,所以要+1
            for(int j = 0;j < sort;j++){   
               char tempC = randomStr.charAt(random.nextInt(randomStr.length()));
               builStr.insert(j, tempC);
            }
            String tempStr = builStr.toString();
            stringList.add(tempStr);
        }
        System.out.println("-------排序前-------");
        for(String string:stringList){
            System.out.println("元素:"+string);
        }
        Collections.sort(stringList);
        System.out.println("-------排序后-------");
        for(String string:stringList){
            System.out.println("元素:"+string);
        }

}
2人推荐
随时随地看视频
慕课网APP

热门评论

你这里没有比较重复的情况啊,虽然概率非常的小,但是也应该比对一下吧。

int sort = random.nextInt(10)+1;
意思是生成10以内的随机数?

查看全部评论