優先度2の演算子

.x.yドット演算子
++x++後置++演算子
--x--後置--演算子

後置単項演算子です。左結合性を持ちます。


目次:


ドット演算子

後置++演算子

後置--演算子

ドット演算子

ドット演算子はオペランドのメンバを呼び出します。

演算子の左側の式の返すインスタンスに右側の式で指定したメンバを呼び出すように指示します。


int i = new int(10); // 10

string str = i.ToString(); // "10"


上記の例ではintクラスの変数iにToString()メソッドの呼び出しを指示しています。

後置++演算子

後置++演算子はオペランドと同じ値を持つ新しいインスタンスを返した後にオペランドの値を1加算します。

オペランドはint、long、realクラスのどれかでなければなりません。そうでなければ、例外がスローされます。

オペランドがクラスの最大値を持つ場合に後置++演算子を使ってもオーバーフローは起こりません。クラスの最小値になります。


int i = 10;

int j = i++; // j is 10. i is 11.

オペランドがproxyクラスを返す場合はproxyクラスの実体が自動的に使用されます。proxyクラスのEntityゲッターを呼び出したのと同じ結果になります。


int i = 10;

proxy pro = new proxy(i);

int j = 10 + pro++; // j is 20. i is incremented.

後置--演算子

後置--演算子はオペランドと同じ値を持つ新しいインスタンスを返した後にオペランドの値を1減算します。

オペランドはint、long、realクラスのどれかでなければなりません。そうでなければ、例外がスローされます。

オペランドがクラスの最小値を持つ場合に後置--演算子を使ってもオーバーフローは起こりません。クラスの最大値になります。


int i = 10;

int j = i--; // j is 10. i is 9.

オペランドがproxyクラスを返す場合はproxyクラスの実体が自動的に使用されます。proxyクラスのEntityゲッターを呼び出したのと同じ結果になります。


int i = 10;

proxy pro = new proxy(i);

int j = 10 + pro--; // j is 20. i is decremented.

Copyright © Rice All rights reserved.