@Letopisec

Как научиться определять, что есть операнд, а что литерал и во всех ли языках они одинаковы?

Как я понял из гугла и других ответов, литерал - это буквальное представление объекта, то есть литерал в первую очередь является объектом и хранится в памяти. А операнд это то, к чему применяется операция.

И я для себя представляю что литералы это какая-то часть, например если написать String [] array = {1,2,3};
то здесь String - тип, [] - литерал объекта массив, array - имя переменной состоящий из символов ascii, = - оператор присваивания, {} - два литерала объекта, 1, 2, 3 - операнд и в то же время литерал числа.
А вот в этом примере:
array[1] - array уже является операндом и 1 тоже является операндом, а [] является операция.
А такие знаки как , . ""''\|{}; они как-то называются обобщенно?

А если взять такой пример class Person{ String name; int age}
То здесь class - ключевое слово, Person имя объекта, {String name; int age} - литерал объекта, name и age - имена переменных, String, int - тип, { } - литерал.

А если в коде существуют просто символы abcde которые вроде как и не строка, раз не обернуты в кавычки, или операторы < > - + = тогда как они представлены в среде разработки? Просто набор символов ascii? И хранятся ли они в памяти?
  • Вопрос задан
  • 181 просмотр
Решения вопроса 1
DevMan
@DevMan
зачем определять?
то есть вообще? что это знание даст?

плюс у разных языков это работает по-разному.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Griboks
@Griboks
Литерал - это явно записанное в коде значение переменной, т.е.
x = 1
obj = { a: "1"}

1 и { a: "1"} - это литералы.

Операнд - это то, к чему применяется операция, т.е.
y = x + 1
+ - это операция сложения, x и 1 - это операнды, причём 1 - это одновременно ещё и литерал.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы