ループforループforループは、他言語のforeachと同じようにiteratorを実装したオブジェクトで使用できる。}配列に対して、インデックスでアクセスするには、次のようになる。}WhileループC言語と同じような感じだ。条件分岐(if、when)まずは、if。ifは、C言語のif文と同じような使い方と、値を返す式としても使える。if文のような使い方は単に返す値を無視しているだけのような気もするwC言語なんかと同じような書き方。println("d=${d}")ブロックの最期の式の値が返る。式の場合は値を返さないってことはできないのでelseが必要になる。when式C言語のswitch文にあたるようなものだ。この場合は、5以上で10以下。println(b)whenもifと同じように式なんで値を返せる。変数にnullを代入Kotlinの変数はそのままではnullを代入できない。型の宣言の最期に?を付けることでnullの代入が可能になる。nullnullの代入を許す変数へのアクセスに?.を使うと変数がnullの場合nullを返してnullでない場合はその後に続くプロパティやメソッドを実行するように書ける。nullを表示nullの場合、nullの代わりになにか値を返すには?:を使う。-1を表示nullの場合、例外を発生させ、null以外の場合はその値を返すには!!を使う。配列はArray<T>クラスであらわされ、C言語などの配列と同じように[]で各項目にアクセスできる。配列の生成と初期化を行う場合、arrayOfを使う。配列の初期値が数列の場合、次のようにラムダ式を使って配列の生成と初期化ができる。8を表示プリミティブ型の配列を作る場合はByteArray、ShortArray、IntArrayなどを使う。これは、ボクシングオーバーヘッドのない配列が生成されるが、Array<T>の継承ではない。コメントあっ、大事なことを忘れていたwコメントだ。*/でのブロックコメントに対応している。ブロックコメントはネスト可能になっている。ROMイメージを作ってみる。ファイルオープンダイアログを出す。