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

时间:2017-07-09 08:40:02

标签: java arraylist

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

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

//New list

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

然后当我想要更改某些内容(比如Name :)时,我想通过id更改它,所以只能在列表中更改ID:2

3 个答案:

答案 0 :(得分:3)

您应该使用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
}

答案 1 :(得分:0)

你可以像这样创建类

export class HomeUsersService extends HttpHelpers {
    private _UrlLogin: string = "Accounts/getAllUsers";

    constructor(@Inject(Http) private _http: Http) {
        super(_http);
    }

    private _usersHome: usersHome[];

    getAllUsers(): usersHome[] {

        alert(2);
        this.postaction(null, this._UrlLogin)
            .map(result => {
                if (result === null) {
                    alert("NULL");
                    return null;
                } else {
                    alert("HAS DATA");
                    this._usersHome = result.result;
                    alert(this._usersHome.length);
                    return this._usersHome;
                }
            });
    }
}

然后像这样使用它:

export class HomeUserComponent implements OnInit {

    _usersHome: [usersHome];

    constructor(private _homeUsersService: HomeUsersService, private _router: Router) {
    }

    ngOnInit() {
        alert(1);
        this._homeUsersService.getAllUsers()
            .subscribe(users => {
                //do something to your users.
                let x = users;
            });
    }
}

答案 2 :(得分:0)

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"));
  }

 }