java随机生成字符串并排序

时间:2022-11-03 20:30:16
 package com.Imooc;

 import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random; /**
* 利用Collections.sort()方法对泛型为String的List进行排序
* 1. 创建List<String>之后往其中添加十条随机字符串
* 2. 每条字符串为10以内的随机数
* 3. 每条字符串的每个字符的每个字符都为随机生成的字符串。字符可以重复
* 4. 每条随机字符串不可以重复
* @author WYL
*
*/
public class StringSortVersion2 { //首先创建一个String的泛型
List<String> stringList = new ArrayList<String>(); public void stringSort(){
Random random = new Random();
String str;
for(int i=0;i<10;i++){
int stringLength = random.nextInt(10);
do{
//调用自定义函数随机生成字符串
str = randomString(stringLength);
}while(stringList.contains(str));
System.out.println("将要添加的字符串: '"+str+"'");
stringList.add(str);
}
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);
}
} /**
* 生成随机字符串函数
* @param args
*/
public String randomString(int length){
String string = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
Random random = new Random();
StringBuffer str = new StringBuffer();
for(int i = 0; i < length;i++ ){
//随机获取字符串(string)长度的的一个值,为生成字符串做准备
int index = random.nextInt(62);
str.append(string.charAt(index));
}
//返回字符串
return str.toString();
}
public static void main(String[] args) {
// TODO Auto-generated method stub StringSortVersion2 ss = new StringSortVersion2();
ss.stringSort();
} }

java随机生成字符串并排序的更多相关文章

  1. Java随机生成定长纯数字或数字字母混合数

    (转)Java随机生成定长纯数字或数字字母混合数 运行效果图: 具体实现代码

  2. java 随机生成4位随机数

    java 随机生成4位的随机数测试类 @org.junit.Testpublic void testRandom(){ String msg="您的注册码为%s,谢谢注册!"; S ...

  3. java随机生成字符串&lpar;字符随机生成类 生成随机字符组合&rpar;

    原文:http://www.jb51.net/article/45006.htm package p2p_web; import java.util.ArrayList; import java.ut ...

  4. java随机生成字符串工具类

    package aA; import java.util.ArrayList; import java.util.Arrays; import java.util.Random; /** * 字符随机 ...

  5. Java随机生成18位身份证号

    package com.ihome.data; import java.text.SimpleDateFormat; import java.util.Calendar; import java.ut ...

  6. Java 随机生成中文姓名,手机号,邮编,住址

    package lovo; import java.util.HashMap; import java.util.Map; /** * 随机生成中文姓名,性别,Email,手机号,住址 * @auth ...

  7. RandomStringUtils工具类(java随机生成字符串)

    使用RandomStringUtils可以选择生成随机字符串,可以是全字母,全数字,自定义生成字符等等... 其最基础的方法: 参数解读: count:需要生成的随机串位数 letters:只要字母 ...

  8. python随机生成字符

    Python2: Unicode是一种通用的编码方式,不论是英文字母.汉字.日语还是其他文字都能够对应一个唯一的Unicode编码(序号). chr(100) # 得到整数对应的ascii码(小于25 ...

  9. 用Java随机生成四则运算

    代码链接:https://github.com/devilwjy/Code.Demo 需求分析: 1.程序可接收一个输入参数n,然后随机产生n道加减乘除练习题,每个数字在 0 和 100 之间,运算符 ...

随机推荐

  1. 超炫的HTML5粒子效果进度条 VS 如何规范而优雅地code

    最近瞎逛的时候发现了一个超炫的粒子进度效果,有多炫呢?请擦亮眼镜!   // _this.ch){ _this.particles.splice(i, 1); } }; this.Particle.p ...

  2. php常用数组函数回顾一

    数组对于程序开发来说是一个必不可少的工具,我根据网上的常用数组函数,结合个人的使用情况,进行数组系列的总结复习.里面当然不只是数组的基本用法,还有相似函数的不同用法的简单实例,力求用最简单的实例,记住 ...

  3. mac上执行sed的编辑 -i命令报错sed&colon; 1&colon; &quot&semi;test&period;txt&quot&semi;&colon; undefined label &OpenCurlyQuote;est&period;txt’或sed&colon; 1&colon; &quot&semi;2a&bsol;test&bsol;&quot&semi;&colon; extra characters after &bsol; at the end of a command

    问题一 sed编辑命令:[sed -i 's/a/b/g' test.txt]   报错:sed: 1: "test.txt": undefined label 'est.txt' ...

  4. JSON格式互转集合

    在工作中我们经常会遇到格式转换的问题,有的时候是将JSON转换成DataTable.DataSet或是List等,也有可能将DataTable.DataSet或是List转换成JSON的,抽了点时间把 ...

  5. 在CentOS 7上利用systemctl添加自定义系统服务

    每一个服务以.service结尾,一般会分为3部分:[Unit].[Service]和[Install],具体内容如下: [Unit]Description=*****After=network.ta ...

  6. 获取客户端的IP地址

    /// <summary> /// 获取客户端的IP地址 /// </summary> /// <returns></returns> public s ...

  7. java GBK字符转换成为UTF-8编码字符

    import java.util.HashMap; import java.util.Map; /** * 创建日期: 2014-04-18 10:36:25 * 作者: 黄飞 * mail:huan ...

  8. dreamweaver中的 map怎么调用&quest;&lowbar;制作热点图像区域

    我们浏览网页时,经常看到一些图片上会出现特别的超链接,即在一张图片上有多个局部区域和不同的网页链接,比如地图链接. 这就是映射图像(Image Map),它是指一幅根据链接对象不同而被人为划分为若干指 ...

  9. 日志框架SLF4J

    1.什么是SLF4J SLF4J:Simple Logging Facade for Java,为java提供的简单日志Facade.Facade门面,更底层一点说就是接口.它允许用户以自己的喜好,在 ...

  10. 【干货】Chrome插件&lpar;扩展&rpar;开发全攻略&lpar;不点进来看看你肯定后悔&rpar;

    写在前面 我花了将近一个多月的时间断断续续写下这篇博文,并精心写下完整demo,写博客的辛苦大家懂的,所以转载务必保留出处.本文所有涉及到的大部分代码均在这个demo里面:https://github ...