继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

第三季集合框架随即字符串排序练习

qq_不像我以后你就完了_0
关注TA
已关注
手记 2
粉丝 0
获赞 26

代码如下

package testCollections;

import java.util.Random;

public class Initail {

public static void main(String[] args) {
    // TODO Auto-generated method stub
    Sort st = new Sort();
    Random random = new Random();

    int i = 0;
    //一共添加10次.
    do{
        String b=st.newString();
        if(st.addString(b)){
            i++;
        }else{
            continue;
        };
    }while(i<10);
            //打印排序前.
    System.out.println("----------排序前-----------");
    st.put();
            //打印排序后.
    System.out.println("----------排序后-----------");
    st.testSort();
    st.put();
}

}

package testCollections;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;

public class Sort {
public List<String> a ;

public Sort(){
    this.a= new ArrayList<String>();
}

//生成一个新的字符串
public String newString(){
    String b = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" ;
    Random random = new Random();
    String newString = "" ;
            //从字符串b中挑选少于10个字符组成新的字符串.
    for(int j = 0;j<=random.nextInt(10);j++){
        int c=random.nextInt(b.length());
        char cr =  b.charAt(c);
        newString = newString + cr;
        }
    System.out.println("生成的字符串为:"+newString);
    return newString;
}

public boolean addString(String newString){
            //判断List中是否有新生成的字符串,没有则添加到List中,且返回一个boolean型的值用作判断.
    if(!(a.contains(newString))){
        a.add(newString);
        return true;
    }else{
        return false;
    }
}

//遍历List
public void put(){
    for (String string : a) {
        System.out.println("元素:"+string);
    }
}

    //排序.
public void testSort(){
    Collections.sort(a);
}

}

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP