java创建一定长度的list_java第三季中对String泛型的List进行排序(随机生成长度不超过10的字符串)...

主要排序方法sort()

/**

* 添加10条随机字符串

* 每条字符串的长度为10以内的随机整数

* 每条字符串的每条字符都是随机生成的字符,字符可以重复

* 每条随机字符串不可以重复

*/

public void sort() {

//这个字符串表示了所有字符,我们要从中截取字符

String base = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";

StringBuffer sb;

Random random = new Random();

List stringList = new ArrayList();

//循环10次,遍历出10个字符串

for (int i = 0; i < 10; i++) {

//每一次遍历完,sb清空

sb = new StringBuffer();

//长度表示1-10之间的整数,即为字符串的长度

int length = (int) (Math.random() * 9) + 1;

//使用do-while来判断是否有重复的字符串,如果重复则继续循环

do {

for (int j = 0; j < length; j++) {

//radom.nextInt(int n)表示返回一个伪随机数,它是取自此随机数生成器序列的、

//在 0(包括)和指定值n(不包括)之间均匀分布的 int 值

int number = random.nextInt(base.length());

sb.append(base.charAt(number));

}

} while (stringList.contains(sb));

//循环一次之后将得到的字符串添加到List中

stringList.add(sb.toString());

System.out.println("将要添加的字符串:" + sb.toString());

}

System.out.println("------排序前------");

for (String string : stringList) {

System.out.println("元素:" + string);

}

System.out.println("------排序后------");

Collections.sort(stringList);

for (String string : stringList) {

System.out.println("元素:" + string);

}

}

程序运行的结果:

将要添加的字符串:g9RJ9MnYf

将要添加的字符串:ETJ476m3

将要添加的字符串:hJqc8W

将要添加的字符串:zZm9Z5LpW

将要添加的字符串:mFvC5M7

将要添加的字符串:w68aTjXG

将要添加的字符串:IQ98lS

将要添加的字符串:iAtafK

将要添加的字符串:wWn

将要添加的字符串:xylv62Tw

------排序前------

元素:g9RJ9MnYf

元素:ETJ476m3

元素:hJqc8W

元素:zZm9Z5LpW

元素:mFvC5M7

元素:w68aTjXG

元素:IQ98lS

元素:iAtafK

元素:wWn

元素:xylv62Tw

------排序后------

元素:ETJ476m3

元素:IQ98lS

元素:g9RJ9MnYf

元素:hJqc8W

元素:iAtafK

元素:mFvC5M7

元素:w68aTjXG

元素:wWn

元素:xylv62Tw

元素:zZm9Z5LpW

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值