如何在Java中存储值列表并检索详细信息
我想创建一个节点列表,其中存储它们的名称(字符串)、IP(字符串)、端口名(整数)、当前工作负载(整数)和最大工作负载(整数)。尝试使用哈希表/映射或数组列表来搜索实现此目的的方法,但我只找到了在列表中使用两个元素的示例。我是否能够根据当前工作负载最低的值检索所有这些值?您可以将如何在Java中存储值列表并检索详细信息,java,Java,我想创建一个节点列表,其中存储它们的名称(字符串)、IP(字符串)、端口名(整数)、当前工作负载(整数)和最大工作负载(整数)。尝试使用哈希表/映射或数组列表来搜索实现此目的的方法,但我只找到了在列表中使用两个元素的示例。我是否能够根据当前工作负载最低的值检索所有这些值?您可以将PriorityQueue与自定义比较器一起使用。您可以创建类节点,例如: import java.util.ArrayList; import java.util.List; public class Node {
PriorityQueue
与自定义比较器一起使用。您可以创建类节点
,例如:
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;
}
}
然后将节点
类型的元素添加到列表
:
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
}
publicstaticvoidmain(字符串[]args){
列表节点=新的ArrayList();
添加(新节点(“名称1”、“0.0.0.0”、111、1、3));
//您可以像这样添加其他节点
}
听起来您应该有一个由名称、IP、端口、当前工作负载和最大工作负载组成的类。然后您可以创建该类型的列表…对于PriorityQueue来说似乎是一个不错的工作