Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

組み込み関数maxを文字列に適用すると……ascii順で最大の文字を返す

組み込み関数maxは順番処理が可能なデータ型に対して最大の値を返してくれる関数です。
ところで文字列は順番処理が可能です。
……文字列にmaxを適用すると、どうなるか?
その文字列中で、ascii順で最大の値を返してきます。
どっかの馬鹿のように、エラーを吐くと思ってコーディングすると面食らう羽目になるので注意して下さい。

実際のところ

常識的使い方なら、こうです

max([1,3,6,2])
#>> 6

では、問題の文字列では……?

max('shuzo')
#>> 'z'

これは二バイト文字にも適用され

max('本日は晴天なり')
#>> '本'