Почему я получаю эту ошибку? "На нестатический метод change () нельзя ссылаться из статического контекста". И после того, как я изменил этот метод на статический, почему он дает что-то вроде этого - >[I@4554617c ?
package arraysınmethods; public class ArraysInMethods { public static void main(String[] args) { int bucky[] = {3,4,5,6,7}; change(bucky); for(int x:bucky) System.out.println(x); } public void change(int arr[]){ for(int counter=0;counter<arr.length;counter++){ arr[counter]+=5; System.out.println(arr); } } }
Что я уже пробовал:
Почему я получаю эту ошибку? "нестатический метод change() не может быть сослан из статического контекста".
А выход есть:
[I@4554617c
[I@4554617c
[I@4554617c
[I@4554617c
[I@4554617c
8
9
10
11
12
И после того,как я изменил этот метод на статический, почему он дает что-то вроде этого - >[I@4554617c ?
Prifti Constantine
Это потому, что на принтере вы печатаете массив и, вероятно,это место расположения массива. Чтобы извлечь значение массива, вы также должны указать индекс массива, чтобы получить значение, которое хранится внутри. Системы.из.код println(Арр[индекс]);
Member 12702056
Большое спасибо,я все понял :)