Есть проблема: на днях учитель по компьютерам обмолвился о том, что можно использовать метод с меткой void для изменения переменных. Привёл рабочий пример:
import java.util.*;
class training
{
static Scanner reader = new Scanner(System.in);
public static void main (String[]args)
{
int [] a = new int [10];
firstnum(a);
System.out.println(Arrays.toString(a));
}
static void firstnum (int[] t)
{
for (int i =0; i < t.length; i++)
t[i] = (int)(Math.random() * 101);
}
}
Код рабочий. Выводит заполненный массив целых чисел. Обратите внимание: метод в котором заполняется массив имеет метку void, то есть не возвращает никакие значение но, почему то, заполняет массив.
Случай второй. Пытался сделать такое же с обычным целым числом. Код:
import java.util.*;
class training2
{
static Scanner reader = new Scanner(System.in);
public static void main (String[]args)
{
int a = 0;
firstnum(a);
System.out.println(a);
}
static void firstnum (int t)
{
t = 1;
}
}
Выводит 0. Почему и как исправить? Заранее спасибо.