如何在Java中存储值列表并检索详细信息

时间:2015-05-02 09:14:19

标签: java

我想创建一个节点列表,用于存储其名称(String),IP(字符串),端口名称(整数),当前工作负载(整数)和最大工作负载(整数)。尝试使用散列表/映射或数组列表搜索方法,但我只找到了人们在列表中使用两个元素的示例。我是否能够根据当前工作负载最低的值检索所有这些值?

2 个答案:

答案 0 :(得分:2)

您可以创建课程Node,例如:

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

public class Node {

private String name;

private String IP;

private Integer portName;

private Integer currentWorkload;

private Integer maximumWorkload;

public Node (String name, String IP, Integer portName, Integer currentWorkload,
        Integer maximumWorkload) {
    this.name = name;
    this.IP = IP;
    this.portName = portName;
    this.currentWorkload = currentWorkload;
    this.maximumWorkload = maximumWorkload;
}


public String getName() {
    return name;
}

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

public String getIP() {
    return IP;
}

public void setIP(String iP) {
    IP = iP;
}

public Integer getPortName() {
    return portName;
}

public void setPortName(Integer portName) {
    this.portName = portName;
}

public Integer getCurrentWorkload() {
    return currentWorkload;
}

public void setCurrentWorkload(Integer currentWorkload) {
    this.currentWorkload = currentWorkload;
}

public Integer getMaximumWorkload() {
    return maximumWorkload;
}

public void setMaximumWorkload(Integer maximumWorkload) {
    this.maximumWorkload = maximumWorkload;
}

}

然后将Node类型的元素添加到List

public static void main(String[] args) {
    List<Node> nodes = new ArrayList<Node>();
    nodes.add(new Node("name1", "0.0.0.0", 111, 1, 3));
    // and you can adds other nodes like this
}

答案 1 :(得分:0)

您可以将PriorityQueue<Node>与自定义比较器一起使用。