ついにベールを脱いだJavaFX

第5回 演算子と構文

この記事を読むのに必要な時間:およそ 7.5 分

今回は,制御構文など第3回で触れられなかった文法について説明していきます。

演算子

JavaFX Scriptで使用可能な演算子の一覧を表1に示しました。基本的にJavaとそれほど変わることはありません。また,演算の評価順序もJavaのそれに準拠しています。なお,インタープリタ版では不等号を表す演算子は<>でしたが,1.0では!=に変更されています。

しかし,論理演算子のandやorなど,Javaとは表記が異なる演算子もあります。表記が異なるだけで,使い方はJavaと変わりません。表記も使い方も異なるのが,キャストとシーケンスに対する演算子です。これらはいずれも,第3回ですでに説明していますので,ここでは省略させていただきます。

また,アニメーションで使用するトゥイーン演算子はJavaにはありません。このトゥイーン演算子に関してはアニメーションを解説する回で詳しく触れる予定です。

Javaには存在するのに,JavaFX Scriptでは存在しない演算子には,%=やシフト演算,ビット論理演算などがあります。また,条件演算子の?:もJavaFX Scriptには存在しません。条件演算子に関しては,後述するif文で代用することができます。

表1 JavaFX Scriptでの演算子一覧

演算子の種類 演算子 説明 相当するJavaの演算子 オペランドの型 結果の型
代入演算子 = 代入 =    
複合代入演算子 += 加算して代入 += Integer += Integer Integer
Integer += Number Integer
Number += Integer Number
Number += Number Number
Duration += Duration Duration
-= 減算して代入 -= Integer -= Integer Integer
Integer -= Number Integer
Number -= Integer Number
Number -= Number Number
Duration -= Duration Duration
*= 乗算して代入 *= Integer *= Integer Integer
Integer *= Number Integer (計算はNumberを使用)
Number *= Integer Number
Number *= Number Number
Duration *= Integer Duration
Duration *= Number Duration
/= 除算して代入 /= Integer /= Integer Integer
Integer /= Number Integer (計算はNumberを使用)
Number /= Integer Number
Number /= Number Number
Duration /= Integer Duration
Duration /= Number Duration
トゥイーン演算子 => トゥイーン なし Duration => Duration Duration
二項論理演算子 and 条件論理積 && Boolean and Boolean Boolean
or 条件論理和 || Boolean or Boolean Boolean
単項論理演算子 not 否定 ! not Boolean Boolean
型演算子 instanceof 型の比較 instanceof Object instanceof 型 Boolean
as キャスト (型) Object as 型 (型で指定した)Object
関係演算子 == 等しい == Object == Object Boolean
!= 等しくない != Object != Object Boolean
< 左辺の値が右辺の値より小さい < Integer < Integer Boolean
Integer < Number
Number < Integer
Number < Number
Duration < Duration
<= 左辺の値が右辺の値以下 <= Integer <= Integer Boolean
Integer <= Number
Number <= Integer
Number <= Number
Duration <= Duration
> 左辺の値が右辺の値より大きい > Integer > Integer Boolean
Integer > Number
Number > Integer
Number > Number
Duration > Duration
>= 左辺の値が右辺の値以上 >= Integer >= Integer Boolean
Integer >= Number
Number >= Integer
Number >= Number
Duration >= Duration
二項算術演算子 + 加算 + Integer + Integer Integer
Integer + Number Number
Number + Integer Number
Number + Number Number
Duration + Duration Duration
- 減算 - Integer - Integer Integer
Integer - Number Number
Number - Integer Number
Number - Number Number
Duration - Duration Duration
* 乗算 * Integer * Integer Integer
Integer * Number Number
Number * Integer Number
Number * Number Number
Integer * Duration Duration
Number * Duration Duration
Duration * Integer Duration
Duration * Number Duration
/ 除算 / Integer / Integer Integer
Integer / Number Number
Number / Integer Number
Number / Number Number
Duration / Integer Duration
Duration / Number Duration
Duration / Duration Number
mod 除算の余り % Integer mod Integer Integer
前置単項演算子 - 符号の反転 - - Integer Integer
- Number Number
- Duration Duration
sizeof シーケンスのサイズ length sizeof シーケンス Integer
reverse シーケンスの反転 なし reverse シーケンス シーケンス
++ インクリメント ++ ++Integer Integer
++Number Number
-- デクリメント -- --Integer Integer
--Number Number
indexof シーケンスのインデックス なし   Index
後置演算子 ++ インクリメント ++ Integer++ Integer
Number++ Number
-- デクリメント -- Integer-- Integer
Number-- Number

著者プロフィール

櫻庭祐一(さくらばゆういち)

横河電機に勤務するかたわらJava in the Boxにて新しい技術を追い続けています。JavaOneは今年で11年目。名実共にJavaOneフリークと化しています。

コメント

コメントの記入