what is wrong with my code?
Эта линия ошибка компиляции:
test = etable(Right[]).clone();
Если right
(или Right
) переменная (объявленная с типом int[]
), то вы должны написать вызов метода так:
test = etable(right).clone();
Если Right
является типом, то это не правильный синтаксис для создания массива. (И, судя из того, как вы написали метод etable
, вы не должны передать ему новый массив.)
Вторая проблема заключается в том, что эта последовательность не имеет смысла:
int test[] = new int[48];
test = etable(...).clone();
Вы направляете массив из 48 элементов ... и затем отбрасывают его, назначая ссылку на другой массив на переменную test
.
Третья проблема заключается в том, что clone()
, скорее всего, избыточен. Ваш метод etable
выделяет новый массив (в blabla
) и возвращает его. Затем вызывающий код копирует новый массив. Если etable
сохраняет ссылку на массив blabla
, шаг копирования ничего не достигнет.
Последней проблемой является то, что если Right
действительно является именем переменной, то это серьезное нарушение стиля Java. В Java имя переменной НЕ должно начинаться с буквы верхнего регистра.
Все не так с вашим кодом. Он не компилируется, и аргумент, передаваемый 'etable()', игнорируется. – darijan
Что не так, даже я не знаю :). На самом деле я не знаю, что ты говоришь. Глядя на код, я не уверен, есть ли опечатки или вы не получаете желаемый результат. В чем проблема? – zerocool
Настоящая проблема (с моей точки зрения) заключается в том, что вы неправильно объяснили, что должен делать код *. Если вы этого не сделаете, мы не можем сказать вам, как это сделать *. (ОК ... так что, возможно, это просто искусственный пример.Но в таком случае, зачем вообще беспокоиться о вещах о 'etable' и т. Д.? Это только делает вопрос излишне длинным и запутанным !!) –