teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

refine

2015/06/28 00:18

投稿

yohhoy
yohhoy

スコア6191

answer CHANGED
@@ -12,4 +12,4 @@
12
12
 
13
13
  > オペランドとリテラルの違いがよく分からないので教えて頂きたいです。
14
14
  - リテラル(literal)はソースコード上に記述された値のことです。それ自身が構文要素の一つであり、即値とも呼ばれます。
15
- - オペランド(operand)は、演算子(operator)の適用対象のことです。演算子とセットでないと意味をなしません。構文木を構成して、初めてオペランドなります
15
+ - オペランド(operand)は、演算子(operator)の適用対象のことです。演算子とセットでないと意味をなしません。構文木を構成して、初めてオペランドなります。前述の部分式ように、単一構文要素とも限りません。

1

=についても言及

2015/06/28 00:17

投稿

yohhoy
yohhoy

スコア6191

answer CHANGED
@@ -1,10 +1,14 @@
1
1
  > オペランドでありながらリテラルじゃないものの具体例などを示して頂ければ幸いです。
2
- 演算子(オペレータ)を変数に適用すれば、”リテラルではないオペランド”になります。
2
+ 演算子(オペレータ)を変数に適用すれば、”リテラルではないオペランド”になります。また、例示コード片にある、部分式も”リテラルではないオペランド”です。
3
3
 
4
+ ```lang-java
5
+ int a = 1, b;
6
+ a + 5;
7
+ // 変数a と リテラル5 は 演算子+ のオペランド
8
+
9
+ b = a + 5;
10
+ // 変数b と 部分式a+5 は 演算子= のオペランド
4
11
  ```
5
- int a = 1, b = 2;
6
- a + b; // ここでのaとbは+のオペランド
7
- ```
8
12
 
9
13
  > オペランドとリテラルの違いがよく分からないので教えて頂きたいです。
10
14
  - リテラル(literal)はソースコード上に記述された値のことです。それ自身が構文要素の一つであり、即値とも呼ばれます。