У меня проблема. Я изучаю java, и этот пример кода не работает, говоря:Массив как параметр конструктора
$javac Quicksort.java 2>&1
Quicksort.java:16: error: constructor Quicksort in class Quicksort cannot be applied to given types;
Quicksort qc = new Quicksort(values);
^
required: no arguments
found: int[]
reason: actual and formal argument lists differ in length
1 error
Невозможно разобраться, почему. Может ли кто-нибудь помочь?
Мой фрагмент кода:
public class Quicksort{
public int[] number ;
public void Quicksort(int[] values){
this.number=values;
}
public void print(){
for (int i=0; i<number.length;i++)
System.out.println(number[i]);
}
public static void main(String[] args){
int[] values = {3,4,5,6,7,8};
Quicksort qc = new Quicksort(values);
qc.print();
}
}
Это не то, как вы определяете конструктор в Java - вы определили простой метод, а не конструктор. В результате ваш код просто принимает аргумент no-argument по умолчанию. – lejlot
тип возвращаемого конструктора не должен указываться, компилятор знает, каков тип возвращаемого значения конструктора и его не пустое, а объект класса, который он создает. – cerkiewny