我是 Java 的新手,到目前为止我所做的只是绘制一些形状和标志。我正在努力理解我所得到的代码。我需要访问存储在另一个类的 ArrayList 中的值。我不确定我是否有任何意义,所以这里有两个类 Seat 和 Mandate:
package wtf2;
import java.util.*;
public class Seat {
public int index;
public String place;
public int electorate;
public String mp;
public String party;
public String prev;
public ArrayList<Mandate> results;
public Seat(int index, String place) {
this.place = place.trim();
this.index = index;
this.results = new ArrayList<Mandate>();
}
public void addMandate(Mandate m) {
//First candidate is always the MP
if (mp == null) {
mp = m.candidate;
party = m.party;
}
results.add(m);
}
public String toString() {
return "[" + this.index + "," + this.place + "]";
}
}
class Mandate {
public String candidate;
public String party;
public int vote;
public Mandate(String candidate, String party, int vote) {
this.candidate = candidate;
this.party = party;
this.vote = vote;
}
}
主类包含将 2 个文本文件中的数据提供给 Seat 和 Mandate 的代码。从那里我设法访问座位中的日期。就像这里:
//Who is the MP for "Edinburgh South"
public static String qA(List<Seat> uk) {
for (Seat s : uk)
if (s.place.startsWith("Edinburgh South"))
return (s.mp);
return "Not found";
}
现在,我需要获取选票值,将它们相互比较,取第二大的值并显示关联党的值,而不是仅获取爱丁堡南区的议员。 将不胜感激任何帮助,例如如何从该数组访问数据至少可以帮助我开始。
最佳答案
ArrayList 中的元素通过其索引进行访问。
似乎您可以根据列表中对象的vote
值对ArrayList
进行排序。
为此,您可能需要查看此处:Sort ArrayList of custom Objects by property
当然,对于您给定的问题来说,排序可能太多了。或者,
您可以遍历列表并选择具有最高值的两个对象
随时投票
值。
关于java - Java中如何访问ArrayList中存储的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27180095/