я пытаюсь отсортировать массив чисел
public class Sort {
public static void main(String args[]){
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
for ( int i = 0 ; i < array.length ; i++ ) {
System.out.println(array[i]);
}
}
}
и он работал нормально, затем я попытался включить его в функцию и вызвать ее из основной функции
public class Sort {
public void Implement () {
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
}
}
public static void main(String[] args){
Sort s = new Sort();
s.Implement (array);
for (int i = 0 ; i < array.length ; i++) {
System.out.println(array[i]);
}
}
тогда все ошибки появляются в цикле for, несмотря на то, что он правильный, в чем проблема?
Я думал, что пропущу его, когда писал эту строку 's.Implement (array);'
вы сделали, но сама переменная array
не существует в области main
, поэтому вам нужно объявить ее
Подпись (формальный параметр) метода Implement ()
- это void
в его определении. Однако вы пытаетесь передать фактический аргумент, которым является array
в вашем примере, методу в main()
. Вот почему вы получаете ошибку времени компиляции.
Проблема в использовании s.Implement (array);
.
Ниже приведены ошибки в вашем коде:
Sort.Implement()
не ожидает никаких аргументов, но вы их передаете.s.Implement (array);
вы не создали переменную array
. Но вы используете его в этой и более поздних строках.Ниже приведен исправленный рабочий пример. Смотрите это здесь работают:
class Sort
{
public int[] Implement () {
int [] array = new int[10];
for ( int i = 0 ; i < array.length ; i++ ) {
array[i] = ((int)(Math.random()*100+1));
}
Arrays.sort( array );
return array;
}
}
class Test
{
public static void main(String[] args){
Sort s = new Sort();
int[] array = s.Implement ();
for (int i = 0 ; i < array.length ; i++) {
System.out.println(array[i]);
}
}
}
Примечания: Основываясь на вашем коде и использовании методы, кажется, что вы новичок в программировании. Так что сначала найдите время, чтобы понять концепции.
Вам нужно либо передать переменную
array
изmain
вs.implement(array)
, либо вернуть ее изs.implement
.