Javaプログラミング

ガイド:掌田 津耶乃

20年前からPC系の執筆を始め、最近ではプログラミング入門解説書を多く手がける。

取材依頼 問合せ

新JavaFXプログラミング!

掲載日: 2008年 10月 01日

JavaFX 1.0の基本文法

基本文法の主な変更点は?


さて前回、NetBeansを使ってJavaFX 1.0のスクリプトを作成し実行するまで行ってみました。JavaFX Scriptの基本的な作り方がわかったところで、基本文法について考えていくことにしましょう。

なお、この連載では、これまで使われていたver. 0.7でJavaFX Scriptの基礎的な知識は身についている人を対象としていますので、新バージョンとの「違い」を中心に解説を行います。JavaFX Scriptについて全く知識がない、という方は、旧バージョンを対象とした連載にざっと目を通しておいてください。

(※「JavaFXでGUIプログラミング!」の連載記事)

●基本型は「5」つ!
それまでの0.7では、基本型は「Number」「Integer」「String」「Boolean」の4つだけでした。が、1.0ではこれに加えて「Duration」というものが加わっています。これは、「時間」を表すためのタイプです。これは数字と、「h」「m」「s」「ms」といった単位を示す記号とを続けて記述します。例えば1時間を示すなら「1h」、100ミリ秒なら「100ms」といった具合です。

import java.lang.System;

var a = 1h;
var b = 100m;
System.out.println(a + b);


例えば、こんな感じで使います。ここでは、1hと100mという値をそれぞれ変数に収めていますが、これらは「1時間」「100分」を示すDuration値です。これを足した値を出力させると、「9600000.0ms」という値が表示されます。これは「9600000ミリ秒」のことです。

このように、Duration値は、普通の値(数値)と同じ感覚で利用できます。また、JavaFXに用意されているアニメーション関係の機能などで、時間を示す値として利用されたりします。まぁ、アニメーション以外ではあまり利用するものではありませんが、「こういう新しい基本型が追加されている」ということは知っておきましょう。


●剰余計算は、%から「mod」へ
四則演算では、割り算の余りを計算する「%」演算子がなくなりました。代りに「mod」を使うようになります。また、これに付随して、代入演算子の「%=」はなくなりました。

var a = 10 % 3; // ×
var a = 10 mod 3; // ○

a %= b; // ×
a = a mod b; // ○


このように、%記号を使ったものは、すべて「mod」に置き換えられます。また、%=は使えなくなるため、普通の=による代入文に書き換える必要があるでしょう。


●値の個数を示す「*」「+」は廃止
変数の宣言をする際に「+」「*」記号を末尾に付けて値の個数を指定することができましたが、これは廃止されました。配列などを代入する場合でも、単に変数名だけを書いてけばOKです。

 var n:Integer+ = [1,2,3]; // ×
var n:Integer[] = [1,2,3]; // ○


このように、*や+記号の代りに、変数を使うのであれば[]を付けてタイプを指定します。例えば、「a:Integer+」として配列を代入していたならば、「a:Integer[]」とすればよいわけですね。Javaなどと感覚的に近くなり、よりわかりやすく整理された感じがします。
ガイドメールマガジン
携帯電話のメールアドレスでは登録できません

掲載の記事・写真・イラストなど、すべてのコンテンツの無断複写・転載・公衆送信等を禁じます。