step2 変数宣言とprintfnと書式指定子
Step 1 では、F#プロジェクトの作成と実行方法を確認した。Step 2 では、F#における基本的な変数宣言、値の出力方法について学び、実際にコードを書いていく。
変数宣言
F#では、let キーワードを使って変数を宣言することができる。一応書いておくと、文末にセミコロンは必要ない。
let 変数名 = 値let束縛は、値を名前に紐づける。
TypeScript と異なり、varやconstは存在しない。
また、基本的には変数の再代入はできない。
例えば、整数型の変数 x に 10 を代入する場合は、以下のように記述する。
let x = 10F#は型推論が強力なため、ほとんどの場合、変数の型を明示的に指定する必要はない。コンパイラが値から型を推論してくれる。
もちろん、型を明示的に指定することも可能だ。型を明示する場合は、変数名の後ろにコロン(:)を置き、その後に型名を記述する。
let x: int = 10出力
コンソールに値を出力するには、printfn 関数を使用する。
printfn "出力したい文字列"TypeScript の console.log() に相当する関数だと考えると分かりやすい。
書式指定子
printfn 関数では、書式指定子を使って、変数などの値を文字列に埋め込むことができる。書式指定子は % から始まる文字列で、値の型に応じて使い分ける。
主な書式指定子は以下の通りだ。
| 書式指定子 | 説明 |
|---|---|
%d | 整数 (int) |
%f | 浮動小数点数 (float) |
%s | 文字列 (string) |
%b | 真偽値 (bool) |
%A | 任意の型 (型に合わせた適切な形式で出力) |
例えば、変数 x の値を埋め込んで出力したい場合は、以下のように記述する。
let x = 10printfn "xの値は%dです" xこのコードを実行すると、xの値は10です とコンソールに出力される。
複数の値を埋め込むことも可能だ。
let name = "Alice"let age = 30printfn "%sさんの年齢は%d歳です" name ageこの場合、Aliceさんの年齢は30歳です と出力される。
困ったときは%Aを使うと、型に合わせた適切な形式で出力される。
Program.fs への適用
それでは、Program.fs に let で変数を束縛し、printfn で出力してみよう。
Program.fs を以下のように書き換える。
let answer = 42
printfn "正解は%dです" answer書き換えたら dotnet run で実行する。
以下のように表示されれば成功だ。
正解は42ですまとめ
このステップでは、以下の内容を学んだ。
letキーワードを使った変数宣言printfn関数を使ったコンソールへの出力- 書式指定子を使った値の埋め込み
次のステップでは、ユーザーからの入力を受け取る方法を学ぶ。