#java #computer-science
Вопрос:
Это метод toString. бакалея [] — тип Геокерис, длина 6, значения присвоены eariler. Есть две ошибки. Одна из них заключается в возврате результата типа String, что я и сделал, вторая ошибка заключается в том, что n — это мертвый код. Что мне делать, если я хочу вернуть информацию о продуктах[1], продуктах[2],…
public String toString()//Error:This method must return a result of type String { if(groceries==null) { return "No Groceries"; } else { for(int n=0; nlt;groceries.length; n )//n is dead code { String str=groceries[n].toString();//this toString is from Groceries Class return str; } } }
Комментарии:
1. мертвый код — зачем создавать цикл, если вы заставляете его выполнять итерацию только один раз? б) возвращаемое значение — как вы думаете, что можно вернуть, если массив пуст?
2. Я использую цикл, потому что после вызова toString я хочу отобразить всю информацию, хранящуюся в каждом элементе массива. Есть ли какой-нибудь другой способ сделать это? Если массив пуст, он должен возвращать значение NULL?
3. Я дал ответ ниже
Ответ №1:
Я предлагаю вам изменить свой код на
public String toString() { if(groceries==null) { return "No Groceries"; } return Arrays.toString (groceries);
Или, если вы действительно хотите сделать цикл, вам нужно будет добавить каждый элемент
StringBuilder rv = new StringBuilder (); else { for(int n=0; nlt;groceries.length; n ) { String str=groceries[n].toString(); rv.append (str); rv.append (","); } } return rv.toString ();
Есть и другие способы.