为了账号安全,请及时绑定邮箱和手机立即绑定

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

标签:
Java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;

public class TestRandomString {
    //定义List 属性;
    List<String> list;

    //构造方法.初始化 list 和定义循环添加10个不相同的字符串;
    public TestRandomString(){
        this.list = new ArrayList<String>();
        String k;
        for(int i=0;i<10;i++){
            do{
                k=testString();
            }while(list.contains(k));
            System.out.println("添加第"+(i+1)+"个字符串: "+k);
            list.add(k);
        }
        System.out.println("*********************排序前*********************");
        testForeach(list);
        System.out.println("*********************排序后*********************");
        testSort(list);
    }

    //随机生成长度为10以内的随机字符串;并返回字符串;
    public String testString(){
        StringBuilder sb = new StringBuilder();
        String str ="01234ABCmopqDEFGnKNO579PQRSTUVW6XYZabcdHIJefghijklrstLMwx8yz";
        Random rd = new Random();
        int j = rd.nextInt(10)+1;
        for(int i=0; i<j;i++){
            sb.append(str.charAt(rd.nextInt(str.length())));
        }
        //System.out.println(sb.toString());
        return sb.toString();
    }

    //遍历 list的方法;
    public void testForeach(List<String> list){
        if(!list.isEmpty()){
            for (String str : list) {
                System.out.println("排序前第"+(list.indexOf(str)+1)+"个字符串: "+str);
            }
        }
    }
    //给list排序后,并打印输出;
    public void testSort(List<String> list){
        if(!list.isEmpty()){
            Collections.sort(list);
            for (String str : list) {
                System.out.println("排序后第"+(list.indexOf(str)+1)+"个字符串: "+str);
            }
        }
    }
    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        //主函数就实例化一个对象;
        TestRandomString trds = new TestRandomString();
        System.out.println("排序的结果是按:数字0-9到字母A-Z到a-z的顺序来排序.");
    }

}
运行结果为:
添加第1个字符串: nGUpnxo
添加第2个字符串: 5Cb
添加第3个字符串: dxgjV9X
添加第4个字符串: U
添加第5个字符串: 9wYq
添加第6个字符串: 6XNlH
添加第7个字符串: FJVCgDIT3q
添加第8个字符串: Zfit8BBI
添加第9个字符串: BhnlBPbg
添加第10个字符串: x1OiUJF0HK
*********************排序前*********************
排序前第1个字符串: nGUpnxo
排序前第2个字符串: 5Cb
排序前第3个字符串: dxgjV9X
排序前第4个字符串: U
排序前第5个字符串: 9wYq
排序前第6个字符串: 6XNlH
排序前第7个字符串: FJVCgDIT3q
排序前第8个字符串: Zfit8BBI
排序前第9个字符串: BhnlBPbg
排序前第10个字符串: x1OiUJF0HK
*********************排序后*********************
排序后第1个字符串: 5Cb
排序后第2个字符串: 6XNlH
排序后第3个字符串: 9wYq
排序后第4个字符串: BhnlBPbg
排序后第5个字符串: FJVCgDIT3q
排序后第6个字符串: U
排序后第7个字符串: Zfit8BBI
排序后第8个字符串: dxgjV9X
排序后第9个字符串: nGUpnxo
排序后第10个字符串: x1OiUJF0HK
排序的结果是按:数字0-9到字母A-Z到a-z的顺序来排序.

运行结果为:
添加第1个字符串: nGUpnxo
添加第2个字符串: 5Cb
添加第3个字符串: dxgjV9X
添加第4个字符串: U
添加第5个字符串: 9wYq
添加第6个字符串: 6XNlH
添加第7个字符串: FJVCgDIT3q
添加第8个字符串: Zfit8BBI
添加第9个字符串: BhnlBPbg
添加第10个字符串: x1OiUJF0HK
排序前
排序前第1个字符串: nGUpnxo
排序前第2个字符串: 5Cb
排序前第3个字符串: dxgjV9X
排序前第4个字符串: U
排序前第5个字符串: 9wYq
排序前第6个字符串: 6XNlH
排序前第7个字符串: FJVCgDIT3q
排序前第8个字符串: Zfit8BBI
排序前第9个字符串: BhnlBPbg
排序前第10个字符串: x1OiUJF0HK
排序后
排序后第1个字符串: 5Cb
排序后第2个字符串: 6XNlH
排序后第3个字符串: 9wYq
排序后第4个字符串: BhnlBPbg
排序后第5个字符串: FJVCgDIT3q
排序后第6个字符串: U
排序后第7个字符串: Zfit8BBI
排序后第8个字符串: dxgjV9X
排序后第9个字符串: nGUpnxo
排序后第10个字符串: x1OiUJF0HK
排序的结果是按:数字0-9到字母A-Z到a-z的顺序来排序.

点击查看更多内容
82人点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消