Java: Именование переменных
greeting — пример простого имени, но не все имена так просты. Довольно часто они составные, то есть включают в себя несколько слов. Например, «имя пользователя». В разных языках применяются разные стили кодирования, и имя переменной будет отличаться.
В именовании переменных можно выделить четыре основных подхода, которые иногда комбинируют друг с другом. Все эти подходы проявляют себя, когда имя переменной состоит из нескольких слов:
- kebab-case — составные части переменной разделяются дефисом (
my-super-var) - snake_case — для разделения используется подчеркивание (
my_super_var) - CamelCase — каждое слово в переменной пишется с заглавной буквы (
MySuperVar) - lowerCamelCase — каждое слово в переменной пишется с заглавной буквы, кроме первого (
mySuperVar)
В Java используется CamelCase и его вариация lowerCamelCase, при котором первая буква первого слова — строчная.
Именно lowerCamelCase применяется для переменных. Это значит, что имена соединяются друг с другом, при этом все имена кроме первого становятся с заглавной буквы: userName. С тремя словами это выглядит так: mySuperVariable.
Посмотрим, как это выглядит в коде:
var firstName = "John";
System.out.println(firstName); // => John
var playerNumber = 24;
System.out.println(playerNumber); // => 24Задание
Создайте две переменные с именами «первое число» и «второе число» на английском языке, используя lowerCamelCase. Запишите в первую переменную число 11, во вторую — -100. Выведите на экран произведение чисел, записанных в получившихся переменных.
-1100Код будет работать с любыми названиями, а наша система всегда проверяет только результат на экране, поэтому выполнение этого задания — под вашу ответственность.
Ваше упражнение проверяется по этим тестам
import java.io.ByteArrayOutputStream;
import java.io.FileDescriptor;
import java.io.FileOutputStream;
import java.io.PrintStream;
import static org.assertj.core.api.Assertions.assertThat;
class Test {
public static void main(String[] args) {
final var expected = "-1100";
ByteArrayOutputStream out = new ByteArrayOutputStream();
System.setOut(new PrintStream(out));
App.main(null);
final var actual = out.toString().trim();
System.setOut(new PrintStream(new FileOutputStream(FileDescriptor.out)));
System.out.println(actual);
assertThat(actual).isEqualTo(expected);
}
}Решение учителя откроется через:
20:00
