生成随机字符串并排序

来源:互联网 发布:程序员教程 第4版 pdf 编辑:程序博客网 时间:2024/05/19 20:00
package com.xykj;import java.util.ArrayList;import java.util.Collections;import java.util.List;import java.util.Random;public class SortString {    List<String> mList;    public SortString(){        //直接在构造方法做好准备        this.mList= new ArrayList<String>();        String kString;        for (int i = 0; i < 10; i++) {            do {                kString=getRandomString();            } while (mList.contains(kString));            System.out.println("添加第"+(i+1)+"个字符串:"+kString);            mList.add(kString);        }        System.out.println("****************************************");        getMlist(mList);        System.out.println("****************************************");        forEachTolist(mList);    }    /**     * 给 mlist 输出     * @return     */    public void getMlist(List<String> list){        if (!list.isEmpty()) {            for (String string : list) {                System.out.println("排序前第"+((list.indexOf(string))+1)+"个字符:"+string);            }        }    }    /**     * 给mlist 排序再输出     * @return     */    public void forEachTolist(List<String> list){        if (!list.isEmpty()) {            Collections.sort(mList);            for (String string : list) {                System.out.println("排序后第"+(list.indexOf(string)+1)+"个字符:"+string);            }        }    }    //生成随机字符串, 返回一个字符串,好绕的感觉。    public String getRandomString(){        String str1="qwertyuiopasdfgzbxhcnjmkl123654789";        Random mRandom = new Random();        StringBuilder mBuilder = new StringBuilder();        int k = mRandom.nextInt(10)+1;        for (int i = 0; i < k; i++) {            //charAt() 方法,方法返回指定索引位置的char值。索引范围为0~length()-1.            mBuilder.append(str1.charAt(mRandom.nextInt(str1.length())));        }        return mBuilder.toString();    }    public static void main(String[] args) {        //实例化一个对象就可以了        SortString mSortString = new SortString();    }}

排序是按0~9 a~z来排序的。

0 0