использовать первый токен в строке для создания отдельных списков массивов, второй токен будет - PullRequest
0 голосов
/ 12 февраля 2012

Я пишу код Java. У меня есть файлы, которые выглядят так:

  1. Президент и вице-президент ==> Фред Флинстоун (P)
  2. Сенат США ==> Луиза Мун (P)
  3. Предложение № 1 ==> Да
  4. Поправка № 1 ==> Отклонить

Я пытаюсь отделить разные соревнования (президент и вице-президент, сенат США и т. Д.) От «выбора избирателя» (Элвин Бун ..., Луиза и т. Д.) Построчно. Я хочу использовать первый токен для создания списка массивов, а второй токен - для добавления в соответствующий список массивов.

Надеюсь, мне это не по душе, так как я новый программист на 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 голосов
/ 13 февраля 2012

Похоже, вы бы лучше обслужили карту. Первый элемент - это ключ, а второй элемент - значение.

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]);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...