Java入门第三季排序练习

package imooc_collection_map_demo;

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

/**
* 练习:
* 1、创建List<String>之后,往其中添加十条随机字符串
* 2、每条字符串的长度为10以内的随机整数
* 3、每条字符串的每个字符都为随机生成的字符,字符可以重复
* 4、每条随机字符串不可重复
*/
public void testProtice(){
List<String>stringPro=new ArrayList<String>();
Random random2=new Random();
char[]temp=null;
int length;
int caseByte;
for(int i=0;i<10;i++){
do{
length=random2.nextInt(9)+1;
temp = new char[length] ;
for(int j=0;j<length;j++){
caseByte=random2.nextInt(3);
switch(caseByte){
case 0:
temp[j]=(char)(random2.nextInt(26) + 97);
break;
case 1:
temp[j]=(char)(random2.nextInt(10)+48);
break;
case 2:
temp[j]=(char)(random2.nextInt(26)+65);
break;
}
}
}while(stringPro.contains(String.valueOf(temp)));
stringPro.add(String.valueOf(temp));
System.out.println("成功添加字符串:"+String.valueOf(temp));
}

System.out.println("----排序前------");
for(String string:stringPro){
System.out.println("元素:"+string);
}
Collections.sort(stringPro);
System.out.println("-------排序后-------");
for(String string:stringPro){
System.out.println("元素:"+string);
}
}

/**
* @param args
*/
public static void main(String[] args) {
CollectionsTest ct=new CollectionsTest();
ct.testProtice();
}

}

时间: 2024-10-06 05:54:00

Java入门第三季排序练习的相关文章

JAVA入门第三季

第一章 异常与异常处理 1-1异常简介 异常处理的作用 java异常体系结构介绍 处理异常 try-catch以及try-catch-finally 抛出异常 自定义异常 异常链 有异于常态,和正常情况不一样,有错误出现.阻止当前方法或作用域,称之为异常 处理异常 tray-catch以及try-catch-finally finally善后工作 1-3 通过案例学习try……catch……finally

Java入门——面向对象基础(一)

Java入门——面向对象基础(一) 本博客目的 练习题(重要) 面向对象的概念(了解) 面向对象的三大特性(重要) 2016-09-10——13:13:39 ll练习题 用方法调用的形式进行数组排序 1 package Sep10; 2 //调用方法完成两个整形数组的排序并打印 3 public class ArrayRefDemo03 { 4 5 /** 6 * @param args 7 */ 8 public static void main(String[] args) { 9 // T

Java入门记(五):容器关系的梳理(下)——Map

注意:阅读本文及相关源码时,需要数据结构相关知识,包括:哈希表.链表.红黑树. Map是将键(key)映射到值(value)的对象.不同的映射不能包含相同的键:每个键最多只能映射到一个值.下图是常见Map的接口和实现.与Collection相比,继承关系简单不少. 一.Map接口和AbstractMap抽象类 Map接口除了增加映射.根据key获取value.判断映射中的key或value是否存在.删除映射的基本方法外,还包含了返回包含所有key的Set.包含所有value的collection

Java入门的程序汇总--第一部分

Java入门的基础程序,虽然很简单,也要多练习,下面有重点的总结一下 1.HelloWorld这个不说了 2.常量与变量部分 基本数据类型使用 1 public class Javashujuleixing { 2 public static void main(String[] args) { 3 String name="张三"; 4 char sex='男'; 5 int num=18; 6 double price=120.5; 7 boolean isOK=true; 8 S

1 Java入门

1 Java入门 1.1 常用DOS命令 DOS:Microsoft Disk Operating System 命令 操作符号 盘符切换命令 盘符名: 查看当前文件夹 dir 进入文件夹命令 cd 文件夹名 退出文件夹命令 cd.. 退出到磁盘根目录 cd\ 清屏 cls 1.2 环境变量的配置 Windows 10版本: 1)右键"计算机"->"属性"->"高级系统设置"->"环境变量"->&quo

Java - Java入门(2-1am)

第一讲.Java入门 1. 计算机语言是人和计算机进行交互的一种工具,人们通过使用计算机语言编写程序来向计算机施令,计算机则执行程序,并把结果输出给用户. 2. 机器语言:由0.1序列构成的指令码组成 如:10000000  加        10010000减          11110000 打印 3. 汇编语言:用助记符号描述的指令系统 如: Mov   A, #10; Mov   B, #20; Add   A,  B; 4. 高级语言: 面向过程的高级语言:程序设计的基本单元为函数

Java入门——面向对象基础(三)

Java入门——抽象类与接口的应用 本Blog内容 为抽象类与接口实例化 抽象类的实际应用——模板设计 接口的实际应用——制定标准 设计模式——工厂设计 设计模式——代理设计 为抽象类与接口实例化 利用多态性 1 package Sep16; 2 3 public class AbstractCaseDemo1 { 4 5 /** 6 * @param args 7 */ 8 public static void main(String[] args) { 9 // TODO Auto-gene

java入门第二步之helloworld【转】

前一篇博客已经介绍了jdk的安装:接下来我们就乘热打铁,完成第一个程序:helloworld(每学一样程序的新东西都是从实现helloworld开始的) 1.不是用开发工具IDE,只是使用记事本来实现: 打开计算本,在记事本上写如下代码,现在可以先不管是什么意思: public class HelloWorld { public static void main(String[] args) { System.out.println("这是我的第一个程序!!"); } } 保存,文件名

Java入门——多线程(二)

Java入门——多线程(二) 线程的状态 要想实现多线程,必须在主线程中创建新的线程对象.任何线程一般具有5种状态. 创建状态:用构造方法创建一个线程对象之后,新的线程就处于该状态.已经有了相应的内存空间和其他资源和其他资源. 就绪状态:线程进入线程队列排队,等待CPU服务. 运行状态:CPU处理,自动调用run()方法. 阻塞状态:就是在执行过程中暂时挂起.原因有:人为挂起,CPU的决定,sleep(),suspend(),wait()等方法.只有当引起阻塞的原因被消除后,线程才能转入就绪状态