1.去除ArrayList集合中的重复元素。定义一个ArrayList集合,并向集合中手动添加以下元素,[java01, java02, java01, java02, java01, java03]。 

import java.io.IOException;

import java.util.HashSet;

import java.util.Iterator;

import java.util.LinkedHashSet;

import java.util.Set;



public class Main {

    public static void main(String[] args) {

        LinkedHashSet<String> set=new LinkedHashSet<>();

        set.add("java01");

        set.add("java02");

        set.add("java01");

        set.add("java02");

        set.add("java01");

        set.add("java03");

        Iterator<String> it=set.iterator();

        while(it.hasNext()){

            System.out.println(it.next());

        }

    }

}

2.main方法中定义一个集合,存入三个用户对象,用户属性为:id,username,password。要求:定义一个方法,根据id查找对应的用户信息。如果存在,返回true,如果不存在,返回false。

import java.util.Iterator;

import java.util.LinkedHashSet;



class user {

    private String id,username,password;

    public user(String id, String username, String password) {

        this.id = id;

        this.username = username;

        this.password = password;

    }

    public String getId() {

        return id;

    }

    public void show()

    {

        System.out.println(id);

        System.out.println(username);

        System.out.println(password);

    }

}

public class Main {

    public static void main(String[] args) {

        LinkedHashSet<user> set=new LinkedHashSet<>();

        user a1=new user("123","abc","123456");

        user a2=new user("456","der","asd456");

        user a3=new user("789","bdc","115670");

        set.add(a1);

        set.add(a2);

        set.add(a3);

        Iterator<user> itr=set.iterator();

        String [] sa={"456","147","123"};

        for(int i=0;i<3;i++) {

            boolean yes=false;

            itr=set.iterator();

            while (itr.hasNext()) {

                if (sa[i].equals(itr.next().getId())) {

                    yes = true;

                }

            }

            System.out.println(yes);

        }

    }

}

3.定义一个集合,添加4个学生对象,并进行遍历删除学生名中含有“明”字的学生信息。学生类的属性为:姓名,年龄。

import java.util.Iterator;

import java.util.LinkedHashSet;



class student {

    private String name;

    private int age;

    public student(String name, int age) {

        this.name = name;

        this.age = age;

    }

    public String getName() {

        return name;

    }

    public void show()

    {

        System.out.println(this.name+" "+this.age);

    }

}

public class Main {

    public static void main(String[] args) {

        LinkedHashSet<student> set = new LinkedHashSet<>();

        student a1 = new student("明a", 11);

        student a2 = new student("aew", 22);

        student a3 = new student("a明14", 33);

        student a4 = new student("a11", 43);

        set.add(a1);

        set.add(a2);

        set.add(a3);

        set.add(a4);

        Iterator<student> itr = set.iterator();

        while (itr.hasNext()) {

            if (itr.next().getName().contains("明")) {

                itr.remove();

            }

        }

        itr = set.iterator();

        while (itr.hasNext()) {

            itr.next().show();

        }

    }



    }

4.创建一个存储学生对象的集合,存储多个学生对象,要求多个学生对象的成员变量相同时,认为是同一个对象,要求只保留一个。。分析:(1) 编写一个Student类,包含name和age属性,提供有参构造方法。(2) 在Student类中,重写toString()方法,输出age和name的值。(3) 在Student类中,重写hashCode()和equals()方法

import java.util.Iterator;

import java.util.LinkedHashSet;



class student {

    private String name;

    private int age;

    public student(String name, int age) {

        this.name = name;

        this.age = age;

    }

    public String getName() {

        return name;

    }

    public void show()

    {

        System.out.println(this.name+" "+this.age);

    }

    public int hashCode()

    {

        return this.name.hashCode();

    }

    public boolean equals(Object o)

    {

        return this.name.equals(((student)o).name);

    }

    public void to_String()

    {

        System.out.println(this.name+" "+this.age);

    }

}

public class Main {

    public static void main(String[] args) {

        LinkedHashSet<student> set = new LinkedHashSet<>();

        student a1 = new student("小明", 11);

        student a2 = new student("小明", 24567);

        student a3 = new student("小星", 33);

        student a4 = new student("小星", 33);

        set.add(a1);

        set.add(a2);

        set.add(a3);

        set.add(a4);

        Iterator<student> itr = set.iterator();

        while (itr.hasNext()) {

            itr.next().show();

        }

    }



    }

5.创建一个HashMap集合,键是学生对象(Student),值是籍贯(String);存储三个键值对元素,并遍历。(同姓名,同年龄认为是同一个学生)。

import java.util.Iterator;

import java.util.LinkedHashMap;

import java.util.Map;



class student {

    private String name;

    private int age;

    public student(String name, int age) {

        this.name = name;

        this.age = age;

    }

    public String getName() {

        return name;

    }

    public int getAge() {

        return age;

    }

    public void show()

    {

        System.out.println(this.name+" "+this.age);

    }

    public int hashCode()

    {

        return this.name.hashCode();

    }

    public boolean equals(Object o)

    {

       return this.name.equals(((student)o).name)&&this.age==((student)o).age;

    }

    public void to_String()

    {

        System.out.println(this.name+" "+this.age);

    }

}

public class Main {

    public static void main(String[] args) {

        LinkedHashMap<student,String> ma = new LinkedHashMap<>();

        student a1 = new student("小明", 11);

        student a2 = new student("小明", 24567);

        student a3 = new student("小星", 33);

        student a4 = new student("小星", 33);

        ma.put(a1,"河南");

        ma.put(a2,"山东");

        ma.put(a3,"东北");

        ma.put(a4,"北京");

        for(Map.Entry<student,String> e:ma.entrySet())

        {

            System.out.println(e.getKey().getName()+" "+e.getKey().getAge()+" "+e.getValue());

        }

    }



    }

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐