2015-11-04 4 views
-5

Я работаю над программой ранжирования на Java, и у меня возникла проблема с «недостижимым кодом». Если кто-нибудь может сказать мне, что вызывает эту проблему, я бы ее оценил.Ошибка в недоступном коде в Java

 static ArrayList<String> assignments = new ArrayList<String>(); 
    static ArrayList<String> grades = new ArrayList<String>(); 

    public static String getAssignment(int a){ 
     return assignments.get(a); 
     return grades.get(a); 
    } 

Это дает мне ошибку «недостижимый код» при возврате grades.get (a);

+1

не может быть двух операторов возврата последовательно. – rajuGT

+1

'return' завершает функцию и возвращает возвращаемое значение. У вас не может быть 2, потому что вы можете вернуть только 1 _value_. Вы можете возвращать массивы и, на некоторых языках, кортежи – Arc676

+2

, вы возвращаете два объекта, поэтому второй недоступен –

ответ

6

У вас есть два оператора возврата, поэтому второй никогда не будет достигнут.

Возможно, вы намеревались добавить условие, которое определит, какой из двух операторов возврата должен быть выполнен.

на основе имени вашего метода, он должен вернуть задание, а не оценка:

public static String getAssignment(int a){ 
    return assignments.get(a); 
} 

Но это зависит от вашей логики.

+0

Я не могу выполнить сразу два оператора возврата? Они представляют собой списки параллельных массивов, и что я могу сделать, чтобы они работали? –

+0

@GeorgeGuffey Метод может возвращать только одно значение. Что вы ожидаете от своего метода? – Eran

+2

@GeorgeGuffey: Определите, «сделайте это». Что вы на самом деле пытаетесь сделать *? Первый оператор 'return' - это« получение задания ». Который, основанный на названии метода, звучит как разумное поведение. Почему здесь есть вторая инструкция 'return'? – David

-1

Я понял. Не знал, что вы можете вернуть только 1 вещь в метод сразу