集合框架(六) 实用类:包装类、String、Math、StringBuffer、Random、时间和日期处理类

来源:互联网 发布:全国驾校数据 编辑:程序博客网 时间:2024/06/05 13:27

实体类中所包含的类:


Math类实例:

1.声明一个Set集合,只能保存Double类型的数据, 保存10个随机100以内的数, 找出最大值和最小值,打印输出. 

public class Ch01 {public static void main(String[] args) {Set<Double> set = new HashSet<>();for(int i = 0;i < 10;i++){set.add(Math.random()*100);}double min = 100;double max = 0;Iterator iter = set.iterator();while(iter.hasNext()){double r = (double) iter.next();System.out.println(r);if(r < min){min = r;}if(r>max){max = r;}}System.out.println("最大值是:"+max);System.out.println("最小值是:"+min);}}
2.创建一个List集合对象, 添加20个30以内的随机整数, 不允许重复. 并打印输出
public class Ch02 {public static void main(String[] args) {List<Integer> list = new ArrayList<>();do{int ran = (int) (Math.random()*30);if(list.contains(ran)){continue;}else{list.add(ran);}}while(list.size()<20);Iterator<Integer> iter = list.iterator();while(iter.hasNext()){System.out.print(iter.next()+"   ");}}}

3.计算半径为3.5的圆的面积

double r = 3.5;System.out.println("半径为3.5的圆的面积是:"+Math.PI*Math.pow(3.5, 2));
4.随机输出5个1-6的整数
System.out.println("随机输出5个1-6的整数:");for(int i = 0 ;i < 5;i++){int n = (int) (Math.random()*5+1);System.out.print(n+"\t");}

Random类实例:1.随机点名器

功能描述:制作一个随机点名器,由老师输入班级的最大学号,进行随机抽取学号回答问题,

中途可以选择结束抽取。回答过问题的学员不再抽取,如果全班学员都回答过问题了,结束抽取,注意随机抽取的学号不能是负数。

public class CallNameTest {private static List list = new ArrayList<>();private static Scanner sc = new Scanner(System.in);static String s = null;public static void random(int id){for(int i = 1;i <= id ;i++){list.add(i);}while(true){Random random = new Random();int index=random.nextInt(list.size());int n = (int) list.get(index);System.out.println("请"+n+"号同学回答问题。。。");list.remove(index);System.out.print("是否继续(y/n)");s = sc.next();if("y".equals(s)) {if(list.size() == 0){System.out.println("所有同学都回答过问题了!");System.out.println("提问结束!");return;}continue;}else if("n".equals(s)){System.out.println("提问结束!");return;}else{System.out.println("输入有误!");return;}}}public static void main(String[] args) {// TODO Auto-generated method stubSystem.out.print("请输入班级的最大学号:");int n = sc.nextInt();random(n);}}

String实体类实例:

1.trim()方法:把字符串中的前后空格删除,中间的空格不能删除
2.由于分辨不清O和0,i和1,将字符串中的“O”替换成“0”,将“i”替换成“1”

String str = "272o500184i22i";System.out.println("替换之前:"+str);str = str.replace("o", "0").replace("i", "1");System.out.println("替换之后:"+str);
3.将字符串My_English_Book转换成myENGLISHBOOK

String s = "My_English_Book";String[] n = s.split("_");n[0] = n[0].toLowerCase();n[1] = n[1].toUpperCase();n[2] = n[2].toUpperCase();System.out.println(n[0]+n[1]+n[2]);
4.编写程序将由数字及字符组成的字符串中的数字截取出来并按顺序输出,例如: “ABC137GMNQQ2049PN5FFF”输出结果应该为 01234579。
String str = "ABC137GMNQQ2049PN5FFF";String[] arr = str.split("");System.out.println(Arrays.toString(arr));//转成集合List<String> list = Arrays.asList(arr);//存入新数组List<String> newlist = new  ArrayList();//筛选数据Iterator<String> iter = list.iterator();while(iter.hasNext()){//遍历String s = iter.next();char[] c = s.toCharArray();if(c[0]>='0'&&c[0]<='9'){newlist.add(s);}}System.out.println(newlist);System.out.println("排序后的元素:");Collections.sort(newlist);System.out.println(newlist);
StringBuffer实体类实例:

连续输入新学习的单词,输入“end”时结束学习,并把新学习的单词打印输出

Scanner sc = new Scanner(System.in);StringBuffer sb = new StringBuffer();String str = null;while(true){System.out.print("新学习的单词:");str = sc.next();if("end".equals(str)){System.out.println("结束学习!");System.out.println("学习的单词为:"+sb);return;}sb.append(str+" ");}

阅读全文
0 0
原创粉丝点击