【JavaSE】作业练习1111

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());
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值