今日はShowについて。
Showは表示可能という性質を与えます。
インスタンスは普通にnewで作ることもできますが、Showsに定義された関数を使っていきましょう。
Shows
showは値を受け取り、List[Char]を返す関数を渡します。
文字列ではなく、List[Char]なのはHaskellをリスペクトしてるからでしょうか?
文字列に対してはtoListなどを呼ばないといけません。
それに対してshowsはStringを返す関数を渡せばいいので、こちらを使うことが多いと思います。
showAはShowをtoStringにより実装します。
case classなどはこれでいいかもしれません。
showByは値を取り、Showのインスタンスを持つ型を返す関数を渡します。
基本的にはshowAとshowsを使っていきましょう。
Showを使う関数
show
shows
Showで定義した文字列を取得する関数。
toStringとは違い、表示できることが保証されています(大抵の場合、"A@17d577c"などの文字列は返らない)。
print
println
名前通りの関数。
rpscalaで初めて気がついた。
text
scala.xml.Textを返す関数・・・・・需要あるの?
scala.xml.Elemのインスタンスはデフォルトでは存在しない模様。
こっちの方が重大じゃなイカ。
これらの関数と昨日紹介したassert_===など。
他にもLoggerやWriterに関係するものがあったりするけどまた今度。
0 件のコメント:
コメントを投稿