На данный вопрос уже ответили:
Имеется код. Эклипс ошибок не выдаёт. Однако при компиляции выводится абракадабра, но в дебаггере (внутри) все ок. Что не так? Заранее благодарю!
package arrays;
//Returning an Array from a Method
public class TestArrays4 {
public static int[] reverse(int[] list) {
int[] result = new int[list.length];
for (int i = 0, j = result.length - 1; i < list.length; i++, j--){
result[j] = list[i];
}
return result;
}
public static void main(String[] args) {
int[] a = {1, 2, 3};
int[] c = reverse(a);
System.out.println("hi " + c);
}
}
в консоли
hi [I@1db9742
Проблема в том, что Вы неправильно выводите содержимое массива на консоль.
В строке:
System.out.println("hi " + c);
происходит неявный вызов метода toString()
класса Object
, который выглядит следующим образом:
public String toString() {
return getClass().getName() + "@" + Integer.toHexString(hashCode());
}
Как видно, он возвращает имя класса и шестнадцатеричное представление хэшкода объекта. Собственно, это Вы и получаете.
Вывести содержимое массива можно, например, так:
for (int i=0; i<c.length; i++) {
System.out.println(c[i]);
}
или так:
for (int i : c) {
System.out.println(i);
}
или так (Java 8):
Arrays.stream(c).forEach(System.out::println);
или можно воспользоваться методом toString(...)
класса Arrays
:
System.out.println(Arrays.toString(c));
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Например, Map<String*, Integer> map = new TreeMap<String, Integer>();, там где * можно поставить < <String,String>, Integer > например?
Есть класс Java, который распаковывает архивы в каталогеЕсли архив поврежден, то открывается окно winrar с содержимым "Архив поврежден или имеет...
Добрый день, подскажите пытаюсь отправить json для этого использую данную конструкцию