в любом случае переставить массив и удалить printline - PullRequest
1 голос
/ 30 мая 2011

Привет, я должен написать программу, в которой учитывается количество кандидатов и сколько голосов они получили от лучших до худших. И я написал для этого два разных класса, используя fileInputStream, и другой, который использует класс сканера и хранит его в массиве списков, но способ, которым учитель использует его в текстовом файле, заключается в том, что некоторые бюллетени находятся в другой строке, поэтому они будут как на одной строке, а бюллетени на другой. так вот как это:

//this is how the text appears in the text file and I was wondering if I could get all 
//the "votes" to look like the first one. 
<v> 5 4 3 2 1  
<v> 1 2 3 4 5 
<v>
1
2
3
5
<v>
5
2
4
1
3

Ответы [ 2 ]

1 голос
/ 30 мая 2011

Я думаю, что ваш учитель сделал это сознательно.Хитрость заключается в том, чтобы понять, что голоса не разделены новой строкой, вместо этого они обозначены буквой «V».Вы можете использовать эту информацию вместе с регулярным выражением ( Pattern ), чтобы получить решение.

0 голосов
/ 30 мая 2011

Если вы не хотите использовать регулярные выражения, вы можете использовать Сканер .

if (scanner.hasNext("<v>")
  scanner.next();//ignore the "<v>"
if (scanner.hasNextInt())
  int vote1 = scanner.nextInt();//first vote
if (scanner.hasNextInt())
  int vote2 = scanner.nextInt();//second vote

Это будет читать, например:

<v> 1
4

Я не хочу портить удовольствие от создания домашней работы, вот и все. Если у вас есть еще вопросы, просто спросите.

...