作业题。。

//1、产生10个1-100的随机数,并放到一个数组中,
//把数组中大于等于10的数字放到一个list集合中,并打印到控制台。
package com.qiku.day17;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Zy1 {
    public static void main(String[] args) {
        int[] arr = new int[10];
        for (int i = 0; i < arr.length; i++) {
            arr[i] = (int) (Math.random()*99+1);
        }
        System.out.println(Arrays.toString(arr));
        List<Integer> list = new ArrayList<>();
        for (int i = 0; i < arr.length; i++) {
            list.add(arr[i]);
        }
        System.out.println(list);
    }
}
//2、已知数组存放一批QQ号码,QQ号码最长为11位,最短为5位
//String[] strs ={"12345","67891","12347809933","98765432102","67891","12347809933"}。
//  将该数组里面的所有qq号都存放在LinkedList中,将list中重复元素删除,
//  将list中所有元素分别用迭代器和增强for循环打印出来。
package com.qiku.day17;

import java.util.*;

public class Zy2 {
    public static void main(String[] args) {
        String[] strs ={"12345","67891","12347809933","98765432102","67891","12347809933"};
        Set<String> set = new HashSet<>();
        for (int i = 0; i < strs.length; i++) {
            set.add(strs[i]);
        }
        System.out.println(set);
        List<String> list = new LinkedList<>();
        Iterator<String> iterator = set.iterator();
        while (iterator.hasNext()){
            list.add(iterator.next());
        }
        System.out.println(list);
        for (Object obj : set){
            System.out.println(obj);
        }
    }
}
//3、用Comparable接口对下列四位同学的成绩做降序排序,如果成绩一样,那在成绩排序的基础上按照年龄由小到大排序。
//提示:
//编写一个Student类用来实现Comparable<Student>接口,并在其中重写CompareTo(Student o)方法  
package com.qiku.day17;

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

public class Zy3 {
    public static void main(String[] args) {
        Student stu1 = new Student("liusan",20,90F);
        Student stu2 = new Student("Lisi",22,90F);
        Student stu3 = new Student("wangwu",20,99F);
        Student stu4 = new Student("sunliu",22,100F);
        List<Student> list = new ArrayList<>();
        list.add(stu1);
        list.add(stu2);
        list.add(stu3);
        list.add(stu4);
        System.out.println(list);
        Collections.sort(list);
        System.out.println(list);
    }
}
package com.qiku.day17;

public class Student implements Comparable<Student>{
    private String name;
    private int age;
    private float score;

    public Student(String name, int age, float score) {
        this.name = name;
        this.age = age;
        this.score = score;
    }
    @Override
    public int compareTo(Student o) {
        if (this.score == o.score){
            return this.age - o.age;
        }
        return o.score - this.score > 0? 1 : -1;
    }
    @Override
    public String toString() {
        return "Student{" +
                "name='" + name + '\'' +
                ", age=" + age +
                ", score=" + score +
                '}';
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public float getScore() {
        return score;
    }

    public void setScore(float score) {
        this.score = score;
    }
}
//4、现在有一个map集合如下:
//Map<Integer,String> map = new HashMap<Integer, String>();
//        map.put(1, "张三丰");
//        map.put(2, "周芷若");
//        map.put(3, "汪峰");
//        map.put(4, "灭绝师太");
//要求:
//1.遍历集合,并将序号与对应人名打印。
//2.向该map集合中插入一个编码为5姓名为李晓红的信息
//3.移除该map中的编号为1的信息
//4.将map集合中编号为2的姓名信息修改为"周林"
package com.qiku.day17;

import java.util.*;

public class Zy4 {
    public static void main(String[] args) {
        Map<Integer,String> map = new HashMap<Integer, String>();
        map.put(1, "张三丰");
        map.put(2, "周芷若");
        map.put(3, "汪峰");
        map.put(4, "灭绝师太");
        System.out.println(map);
        map.put(5,"李晓红");
        map.remove(1);
        map.put(2,"周林");


        Set<Integer> keys = map.keySet();
        Iterator<Integer> itKey = keys.iterator();
        while (itKey.hasNext()){
            Integer key = itKey.next();
           String value = map.get(key);
            System.out.println(key + ":" + value);
        }
        Collection<String> values = map.values();
        Iterator<String> valueIt = values.iterator();
        while (valueIt.hasNext()){
            String value = valueIt.next();
            System.out.println(value);
        }
    }
}
//5、已知有十六支男子足球队参加2020 奥运会。写一个程序,把这16 支球队随机分为4 个组。
//采用List集合和随机数
//  2020 奥运会男足参赛国家:
//科特迪瓦,阿根廷,澳大利亚,塞尔维亚,荷兰,尼日利亚、日本,美国,中国,
//新西 兰,巴西,比利时,韩国,喀麦隆,洪都拉斯,意大利
package com.qiku.day17;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class Zy5 {
    public static void main(String[] args) {
        String[] strs = {"科特迪瓦", "阿根廷", "澳大利亚", "塞尔维亚", "荷兰", "尼日利亚", "日本", "美国", "中国",
                "新西兰", "巴西", "比利时", "韩国", "喀麦隆", "洪都拉斯", "意大利"};
        List<String> list = new ArrayList<>();
        for (int i = 0; i < strs.length; i++) {
            list.add(strs[i]);
        }
        List<String> list1 = new ArrayList<>();
        List<String> list2 = new ArrayList<>();
        List<String> list3 = new ArrayList<>();
        List<String> list4 = new ArrayList<>();
        System.out.println(list);
        for (int i = 0; i <strs.length;i++) {
            int index = (int) (Math.random()*list.size());
            if (i <4){
                list1.add(list.get(index));
                list.remove(list.get(index));
            }
            if (i>=4&&i<8){
                list2.add(list.get(index));
                list.remove(list.get(index));
            }
            if (i>=8&&i<12){
                list3.add(list.get(index));
                list.remove(list.get(index));
            }
            if (i>=12&&i<16){
                list4.add(list.get(index));
                list.remove(list.get(index));
            }
        }
        System.out.println(list1);
        System.out.println(list2);
        System.out.println(list3);
        System.out.println(list4);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值