このエントリーをはてなブックマークに追加

JavaDoc

Ascii文字に関しての定義と、Asciiでの文字列の比較

Asciiを使うことでコメント付きマジックナンバーから

key == 127 //DEL

ASCIIで指定

key == Ascii. DEL

と書き換えられる。

ただ、\r\nの略称名のCRLF/NLを覚えるのは物凄く大変そう。

Staticメソッド

equalsIgnoreCase

boolean equalsIgnoreCase(CharSequence s1, CharSequence s2)

Ascii限定で比較するので、String.toLowerCaseや、String.equalsIgnoreCaseより高速 で、大文字・小文字の区別なく文字列を比較できる。

ファイル拡張子を見分けるため(.jpg と .JPGは同じとする)、双方をtoLowercaseにして比べたりしていますが、それよりはコードはコンパクトになります。

isLowerCase

boolean isLowerCase(char c)

a-zかどうか

isUpperCase

boolean isUpperCase(char c)

A-Zかどうか

toLowerCase

char toLowerCase(char c)

String toLowerCase(CharSequence chars)

String toLowerCase(String string)

a-z 限定で、小文字に、Stringsのは日本語だから影響ないか、幅広く小文字化する。

toUpperCase

char toUpperCase(char c)

String toUpperCase(CharSequence chars)

String toUpperCase(String string)

A-Z 限定で、大文字に

truncate

truncate(CharSequence seq, int maxLength, String truncationIndicator)

truncateは切り縮めるという意味だが、そのとおりに、長い文字列を指定の文字列で収まるようにする。省略される箇所は、truncationIndicatorの文字列が表示される。そして文字列の長さは、truncationIndicator含めて、maxLength内に収まる。

truncationIndicator部分が長いと、本文は短くなる。後ろも残したい場合は、後ろは別途取り出す。

本文 切り詰められた分 引数
今日はいい天気 今日は.. ("今日はいい天気",5,"..)

スペースが限られたセルリストなどで、本文を省略表示したり、あるいはログで頭の文字列を確認するとか使えそう。

関連

charがAsciiかどうか調べるには、base.CharMatcherのASCIIを使う

public static final CharMatcher ASCII = inRange('\0', '\u007f', "CharMatcher.ASCII");