【JavaSE】作业练习1111

来源:互联网 发布:教育统计软件安装 编辑:程序博客网 时间:2024/06/07 15:40

1:获取10个1-20之间的随机数,要求不能重复
  用ArrayList实现:

import java.util.ArrayList;import java.util.Random;/*1:获取10个1-20之间的随机数,要求不能重复*/public class Demo1 {    public static void main(String[] args) {        getRandom();    }    public static void getRandom(){        Random r=new Random();        ArrayList <Integer>array=new ArrayList<Integer>();        int count=0;        while(count!=10){            Integer random=r.nextInt(20)+1;            if(!array.contains(random)){                array.add(random);                count++;            }        }        //第num个随机数,遍历生成的随机数        int num=1;        for(Integer i:array){            System.out.println("第"+num+"个随机数:"+i);            num++;        }    }}

  用TreeSet实现:

import java.util.Random;import java.util.TreeSet;public class Demo3 {    public static void main(String[] args) {        getRandom();    }    public static void getRandom(){        Random r=new Random();        TreeSet <Integer>tree=new TreeSet<Integer>();        while(tree.size()<10){            int random=r.nextInt(20)+1;            tree.add(random);        }        int count=0;        for(int i:tree){            count++;            System.out.println("第"+count+"个元素为:"+i);        }        System.out.println(tree);    }}

2:键盘录入多个数据,以0结束,要求在控制台输出这多个数据中的最大值
  用ArrayList实现:

import java.util.ArrayList;import java.util.Scanner;public class Demo2 {    public static void main(String[] args) {        Integer num=1;        ArrayList <Integer>array=new ArrayList<Integer>();        while(num!=0){            Scanner sc=new Scanner(System.in);            System.out.println("请输入一个数!");            num=sc.nextInt();            //System.out.println(num);            array.add(num);        }        getMax(array);    }    public static void getMax(ArrayList<Integer> array){        for(int i=0;i<array.size()-1;i++){            for(int j=i+1;j<array.size();j++){                Integer number1=array.get(i);                Integer number2=array.get(j);                if(number1<number2){                    Integer temp=number1;                    number1=array.set(i,number2);                    number2=array.set(j, temp);                }            }        }        System.out.println("最大数为:"+array.get(0));    }}

  用TreeSet实现:

import java.util.Scanner;import java.util.TreeSet;public class Demo4 {    public static void main(String[] args) {        Scanner sc=new Scanner(System.in);        TreeSet<Integer> tree=new TreeSet<Integer>();        int i=1;        while(i!=0){            System.out.println("请输入一个数字!");            i=sc.nextInt();            tree.add(i);        }        System.out.println("最大的数为:"+tree.last());    }}