如何在Java中访问存储在ArrayList中的值?

如何在Java中访问存储在ArrayList中的值?,java,arrays,eclipse,class,arraylist,Java,Arrays,Eclipse,Class,Arraylist,我对Java完全是个新手,到目前为止,我所做的只是画一些形状和旗帜。我正在努力理解别人给我的代码。我需要访问存储在另一个类中的ArrayList中的值。我不确定我说的是否有道理,所以这里有两个班级的席位和授权: package wtf2; import java.util.*; public class Seat { public int index; public String place; public int electorate; pu

我对Java完全是个新手,到目前为止,我所做的只是画一些形状和旗帜。我正在努力理解别人给我的代码。我需要访问存储在另一个类中的ArrayList中的值。我不确定我说的是否有道理,所以这里有两个班级的席位和授权:

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;
    }
}
包装wtf2;
导入java.util.*;
公务舱座位{
公共整数指数;
公共场所;
公共选民;
公共字符串mp;
公众党;
公共字符串prev;
公共阵列列表结果;
公共座位(整数索引,字符串位置){
this.place=place.trim();
这个指数=指数;
this.results=新的ArrayList();
}
公共授权书(授权书m){
//第一位候选人总是下院议员
if(mp==null){
mp=m.候选人;
党=党;
}
结果:增加(m);
}
公共字符串toString(){
返回“[”+this.index+”,“+this.place+”];
}
}
阶级授权{
公共字符串候选人;
公众党;
公众投票;
公共授权(字符串候选人、字符串党、整数票){
this.candidate=候选者;
这个党=党;
投票;投票;
}
}
主类包含将2个文本文件中的数据馈送到Seat和Commission中的代码。从那以后,我设法找到了座位上的日期。就像这里:

//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";
}
//谁是“爱丁堡南部”的议员
公共静态字符串qA(英国列表){
(座位:英国)
if(s.place.startsWith(“爱丁堡南部”))
返回(s.mp);
返回“未找到”;
}
现在,我需要得到的不是爱丁堡南部的国会议员,而是选票值,相互比较,取第二大值,并显示关联党的值。
非常感谢您的帮助,例如如何从该数组访问数据至少可以帮助我入门。

数组列表中的元素是通过其索引进行访问的。 似乎您可以根据列表中对象的
投票
值对
ArrayList
进行排序。 为此,您可能需要在此处查看:

当然,对于给定的问题,排序可能太多了。或者,
您只需在列表中迭代,然后选择两个最高值的对象

投票
随走随值。

如果你要求人们阅读你的代码,你应该修正缩进。我建议使用两个
席位
变量,引用到目前为止投票最多的席位,以及到目前为止投票第二大的席位。使用以(Seat-Seat:uk){或类似内容开头的循环遍历您的
列表
,并在您发现投票值大于已存储投票值的席位时更新这两个变量。您似乎正在查看一个。