使用字符串中的第一个标记来创建单独的数组列表,第二个标记将会

时间:2012-02-12 01:40:18

标签: java arraylist

我正在编写Java代码。我的文件看起来像:

  1. 总统和副总统==> Fred Flinestone(P)
  2. 美国参议院==> Louise Moon(P)
  3. 命题#1 ==>是
  4. 修正案#1 ==>下降
  5. 我正试图将选举中的不同比赛(总统和副总统,美国参议院等)与选民的选择分开。 (Alvin Boone ......,Louise等)一行一行。我想使用第一个标记创建一个数组列表,并使用第二个标记添加到相应的数组列表中。

    我希望我不是因为我是一名新的Java程序员,但我感激不尽。到目前为止,我有。

    public void go () {
      getContest();
    }
    
    void getContest() {
      // reading file and call the addContest() method for each line/
      try {
        String line = null;
        while ((line = reader.readLine()) != null) {
          addContest(line);
        }
      }
    }
    
    void addContest (String lineToParse) {
      String[] tokens = lineToParse.split(">");
    
      // somehow this will add contests to
      // its own array 0 is the first part of split
      contestList.add(tokens[0]);
    }
    

    我希望我不要求太多,但如果我能找到如何创建数组列表,我相信我可以将第二个令牌放在相应的数组中。谢谢!

1 个答案:

答案 0 :(得分:0)

看起来你可能会被地图更好地服务。第一个元素是键,第二个元素是值。

ArrayList<String> lines = new ArrayList<String>();
String line;
while ((line = reader.readLine()) != null) {
    lines.add(line);
}
HashMap<String, String> votes = new HashMap<String, String>();
for(String line: lines) {
    String[] terms = line.split(">");
    votes.put(terms[0], terms[1]);
}