2014-12-01 2 views
-2

Я прочитал данные из текстового файла и сохранил их в массиве с именем «boat1». Есть девять значений, и я пытаюсь добавить вместе [4] в [9] индекс, чтобы получить общее значение.Как бы добавить индекс массива вместе?

Как бы я это сделал?

Вот мой код:

String[] boat1 = new String[9]; 
    int i = 0; 
    while(reader.hasNextLine() && i < boat1.length) { 
     boat1[i] = reader.nextLine(); 
     i++; 
    } 

Я попытался изменить значение в целое число, но не кажется, что это будет работать ..?

спасибо.

+0

Что именно вы хотите? –

+0

В String [9] нет элемента с индексом 9, индексы будут идти от 0 до 8. – maksimov

+0

Я предполагаю, что вы имеете в виду, что вы читаете числа, и вы хотите их суммировать. Либо вы читаете их как int или другой численный тип reader.nextInt(), либо вы разбираете их с ints, Integer.parseInt (boat1 [i]); – Opetion

ответ

1

Вы должны проанализировать, прежде чем добавить:

int a = Integer.parseInt(boat1[3]); 
int b = Integer.parseInt(boat1[8]); 
int c = a + b; 

Ваш массив boat1 является String массив, а не int массив. Вам нужно его преобразовать. Обратите внимание, что boat1 - это размер 9, что означает, что он имеет индексы от 0 до 8. Java основана на 0.

Если вы хотите добавить последовательность чисел (например, 3,4, ..., 7,8), просто пройдите по индексам, которые вы хотите добавить, и отслеживайте общее количество.

+0

op сказал 4 к 9. Я предполагаю, что op означает от 4 до 9? –

+0

@KickButtowski Это показывает принцип. Я думаю, этого достаточно, чтобы OP работал для себя, что в целом способствует лучшему обучению тому, что передается код. – christopher

+0

, дающий код оператору, который не имеет ни малейшего представления о том, что происходит, не поможет. ** Мы не здесь, чтобы конкурировать, чтобы получить больше очков. ** Мы здесь, чтобы помочь другим лучше понять их проблемы. –

0

Поскольку ваш массив является типом String, его необходимо преобразовать в int, после этого вы получите что-то вроде этого примера, предполагая, что я составляю эти значения, но он все равно должен работать для вашего кода :) , Не забудьте добавить цикл for в конец, поскольку у меня есть его в моем коде, чтобы он мог найти сумму ваших индексов. Надеюсь, это поможет вам!

int sum = 0; 
    int[] boat = new int[9]; 
    boat[0] = 2; 
    boat[1] = 4; 
    boat[2] = 6; 
    boat[3] = 8; 
    boat[4] = 10; 
    boat[5] = 12; 
    boat[6] = 14; 
    boat[7] = 16; 
    boat[8] = 18; 


    for(int i = 3; i < boat.length ; i++){ 
     sum += boat[i]; 
    } 
    System.out.println(sum); 
Смежные вопросы