У вас есть два массива, называемых a
:
статическими, mergesort.a
:
public static int a[];
и локальной переменной в main:
int a[]=new int[]{64,21,33,70,12,85,44,99,36,108};
Когда вы используете a
в merge
, вы используете статический член, который никогда не инициализировался.
Если вы хотели инициализировать mergesort.a
, вы должны были написать
a = new int[]{64,21,33,70,12,85,44,99,36,108};
Однако, чтосделало бы merge
странным, поскольку он будет иметь work = a
в качестве аргумента и ссылку на статический mergesort.a
, который тогда будет таким же массивом.
Смущен?Я тоже ... :)