Представьте себе задачу — нужно напечатать на экран фразу Father! два раза. Эту задачу можно решить в лоб:
System.out.println("Father!"); // => Father!
System.out.println("Father!"); // => Father!
В простейшем случае так и стоит поступить, но если фраза Father! начнет использоваться чаще, да еще и в разных частях программы, то придется ее везде повторять. Проблемы с таким подходом начнутся тогда, когда понадобится изменить нашу фразу, а такое происходит довольно часто. Нам придется найти все места, где использовалась фраза Father! и выполнить необходимую замену. А можно поступить по-другому. Вместо копирования нашего выражения, достаточно создать переменную с этой фразой:
// greeting – переводится как приветствие
// var – нужен только при определении переменной
var greeting = "Father!";
System.out.println(greeting);
System.out.println(greeting);
Код выше состоит из таких компонентов:
В строчке var greeting = "Father!"
происходит присваивание значения "Father!"
переменной с именем greeting
.
Когда переменная создана, можно начать ее использовать. Она подставляется в те места, где раньше стояла наша фраза. Во время выполнения кода в строке System.out.println(greeting)
вместо переменной подставляется ее содержимое, а затем выполняется код. В результате вывод нашей программы будет таким:
Father!
Father!
Для имени переменной используется любой набор допустимых символов, к которым относятся буквы английского алфавита, цифры, знак _
. При этом цифру нельзя ставить в начале. Имена переменных регистрозависимы, то есть имя hello
и имя heLLo
- это два разных имени и две переменные. Ниже пример с двумя разными переменными:
var greeting1 = "Father!";
System.out.println(greeting1);
System.out.println(greeting1);
var greeting2 = "Mother!";
System.out.println(greeting2);
System.out.println(greeting2);
Father!
Father!
Mother!
Mother!
Для удобства анализа программы переменные принято создавать как можно ближе к тому месту, где они используются.