繁体   English   中英

在Java中创建具有唯一ID的列表并对其进行操作

[英]Create list with unique id in Java and manipulate it

我想创建一个程序来创建一个看起来像这样的列表

ID: 1
Name: Example
Surname: Example
email: example

//New list

ID: 2
Name: Example
Surname: Example
email: example

然后当我想更改某些内容(例如Name:)时,我想通过id进行更改,因此只能在ID为2的列表内进行更改

您应该使用HashMap

创建一个包含ID,名称,姓氏和电子邮件实例变量的类(将其归类为YourClass )。

然后创建一个HashMap ,其中键是标识符,值是YourClass

Map<Integer,YourClass> map = new HashMap<>();
map.put(objectOfYourClassWithID1.getID(),objectOfYourClassWithID1);
map.put(objectOfYourClassWithID2.getID(),objectOfYourClassWithID2);
if (map.containsKey(2)) {
    map.get(2).setSomeProperty(newValue); // this will only change the object whose ID is 2
}

你可以像这样创建类

public class Record{
    private int id;
    private String name;
    private String Surname;
    private String email;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

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

    public String getSurname() {
        return Surname;
    }

    public void setSurname(String surname) {
        Surname = surname;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }
}

然后像这样使用它:

    Record record1 = new Record();
    record1.setId(1);
    record1.setName("example");
    record1.setSurname("example");
    record1.setEmail("example");

    Record record2 = new Record();
    record2.setId(2);
    record2.setName("example");
    record2.setSurname("example");
    record2.setEmail("example");

    Map<Integer,Record> recordMap = new HashMap<Integer, Record>();
    recordMap.put(record1.getId(),record1);
    recordMap.put(record2.getId(),record2);]

    recordMap.get(2).getName();//example
    recordMap.get(2).setName("ebi");
    recordMap.get(2).getName();//ebi
import java.util.ArrayList;
import java.util.List;

public class Person {

private int id;
private String name;
private String Surname;
private String email;

public Person(int id, String name, String surname, String email) {
    super();
    this.id = id;
    this.name = name;
    Surname = surname;
    this.email = email;
}

public int getId() {
    return id;
}

public void setId(int id) {
    this.id = id;
}

public String getName() {
    return name;
}

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

public String getSurname() {
    return Surname;
}

public void setSurname(String surname) {
    Surname = surname;
}

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}

public static void main(String[] args) {

    List<Person> list = new ArrayList<Person>();
    list.add(new Person(1, "example", "example", "example"));
    list.add(new Person(2, "example", "example", "example"));
  }

 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM