Назад к вопросам
JuniorТеорияЧасто
Что выведет программа?
public class Main {
static void inc(int n) {
n++;
}
public static void main(String[] args) {
int x = 1;
inc(x);
System.out.println(x);
}
}1
- Ждать
2: Java передаёт аргументы по значению,n— копияx, иn++меняет только копию, которая исчезает после выхода изinc. - Ждать ошибку компиляции: параметр — обычная локальная переменная, и менять его можно; только до переменной вызывающего кода изменение не доходит.
- Как изменить
inc, чтобыmainполучил новое значение? - Как Java передаёт аргументы — по значению или по ссылке?