public final class StringUtil
extends java.lang.Object
StringUtil.insert(String, String, int...)のように
文字列編集用途に使用するメソッドも用意されている。これらのメソッドは、
例えば、電話番号をハイフン区切りに整形する等のフォーマット処理用に使用されることを想定している。
プロジェクトでフォーマット用のユーティリティを作成する場合、これらのメソッドを使用するとよい。
本クラスはサロゲートペアに対応している。| Modifier and Type | Method and Description |
|---|---|
static java.lang.String |
chomp(java.lang.String target,
java.lang.String end)
行末の文字列を切り落とす。
|
static byte[] |
getBytes(java.lang.String string,
java.nio.charset.Charset charset)
指定された文字セットで文字列をエンコードする。
JDK1.6以上を使用する場合は、
java.lang.String#getBytes(Charset)を使用すること。stringがnullだった場合、nullを返す。
stringが空文字だった場合、空のバイト配列を返す。 |
static boolean |
hasValue(java.util.Collection strings)
コレクションが何らかの文字列を含んでいるか判定する。
StringUtil.isNullOrEmpty(Collection)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。 |
static boolean |
hasValue(java.lang.String... strings)
文字列配列が何らかの文字列を含んでいるか判定する。
StringUtil.isNullOrEmpty(String...)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。 |
static boolean |
hasValue(java.lang.String string)
Stringインスタンスが何らかの文字を含んでいるか判定する。
StringUtil.isNullOrEmpty(String)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。例を以下に示す。 |
static java.lang.String |
insert(java.lang.String target,
java.lang.String delimiter,
int... intervals)
区切り文字を文字列先頭から挿入する。
例:
|
static java.lang.String |
insertFromRight(java.lang.String target,
java.lang.String delimiter,
int... intervals)
区切り文字を右側から挿入する。
例:
|
static java.lang.String |
insertRepeatedly(java.lang.String target,
java.lang.String delimiter,
int interval)
区切り文字を等間隔で挿入する。
例:
|
static java.lang.String |
insertRepeatedlyFromRight(java.lang.String target,
java.lang.String delimiter,
int interval)
区切り文字を右側から等間隔で挿入する。
例:
|
static boolean |
isNullOrEmpty(java.util.Collection strings)
nullまたは空文字列判定を行う。
与えられたコレクション内の要素全てがnullまたは空文字であればtrueを返却する。 |
static boolean |
isNullOrEmpty(java.lang.String... strings)
nullまたは空文字列判定を行う。
与えられた文字列配列内の要素全てがnullまたは空文字であればtrueを返却する。 |
static boolean |
isNullOrEmpty(java.lang.String string)
nullまたは空文字列判定を行う。 |
static java.lang.String |
join(java.lang.String separator,
java.util.List params)
複数の文字列をセパレータを挟んで結合する。
|
static java.lang.String |
lpad(java.lang.String string,
int length,
char padChar)
文字列の左側に、指定された文字を指定された文字列長に到達するまで加える。
stringの文字数 >= length の場合はstringの文字列をそのまま返却。例: |
static java.lang.String |
nullToEmpty(java.lang.String value)
引数で渡された値が
nullの場合、空文字を返却する。そうでない場合は、引数をそのまま返却する。 |
static java.lang.String |
repeat(java.lang.Object repeated,
int times)
文字列を繰り返す。
引数が文字列でない場合は、
String.valueOf(Object)された文字列が繰り返される。 |
static java.lang.String |
rpad(java.lang.String string,
int length,
char padChar)
文字列の右側に、指定された文字を指定された文字列長に到達するまで加える。
stringの文字数 >= length の場合はstringの文字列をそのまま返却。例: |
static java.util.List |
split(java.lang.String str,
java.lang.String separator)
文字列をセパレータで分割する。
|
static java.util.List |
split(java.lang.String str,
java.lang.String separator,
boolean trim)
文字列をセパレータで分割する。
|
@Published
public static java.lang.String lpad(java.lang.String string,
int length,
char padChar)
stringの文字数 >= length の場合はstringの文字列をそのまま返却。
StringUtil.lpad("100", 10, '0'); //--> "0000000100"
string - 文字列(null不可)length - 変換後文字列のサイズ(0以上)padChar - 加える文字@Published
public static java.lang.String rpad(java.lang.String string,
int length,
char padChar)
stringの文字数 >= length の場合はstringの文字列をそのまま返却。
StringUtil.rpad("100", 10, '0'); //--> "1000000000"
string - 文字列(null不可)length - 変換後文字列のサイズ(0以上)padChar - 加える文字@Published public static boolean isNullOrEmpty(java.lang.String string)
nullまたは空文字列判定を行う。
|引数 | 戻り値 +--------------------+-------- | null | true | "" | true | "hoge" | false | " " (半角スペース) | false | " "(全角スペース) | false
string - 文字列nullまたは空文字列の場合はtrue@Published public static boolean isNullOrEmpty(java.lang.String... strings)
nullまたは空文字列判定を行う。
与えられた文字列配列内の要素全てがnullまたは空文字であればtrueを返却する。
|引数 | 戻り値
+--------------------+--------
| null | true
| {} | true
| {"", null} | true
| { null, "a" } | false
| " " (半角スペース) | false
| " "(全角スペース) | false
strings - 文字列配列nullまたは空文字の時、trueStringUtil.isNullOrEmpty(String)@Published public static boolean isNullOrEmpty(java.util.Collection strings)
nullまたは空文字列判定を行う。
与えられたコレクション内の要素全てがnullまたは空文字であればtrueを返却する。
|引数 | 戻り値
+--------------------+--------
| null | true
| {} | true
| {"", null} | true
| { null, "a" } | false
| " " (半角スペース) | false
| " "(全角スペース) | false
strings - 文字列を格納したコレクションnullまたは空文字の時、trueStringUtil.isNullOrEmpty(String)@Published public static boolean hasValue(java.lang.String string)
StringUtil.isNullOrEmpty(String)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。
private String something;
public void hasSomething() {
return (!StringUtil.isNullOrEmpty(this.something)) {
}
以下のように書き換えることで、単純に読み下すことができる。
public void hasSomething() {
return StringUtil.hasValue(this.something);
}
string - 文字列trueStringUtil.isNullOrEmpty(String)@Published public static boolean hasValue(java.lang.String... strings)
StringUtil.isNullOrEmpty(String...)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。strings - 調査対象となる文字列配列trueStringUtil.isNullOrEmpty(String...),
StringUtil.hasValue(String)@Published public static boolean hasValue(java.util.Collection strings)
StringUtil.isNullOrEmpty(Collection)と逆の真偽値を返却する。
否定演算子を使用することで可読性が劣る場合は本メソッドを使用すると良い。strings - 調査対象となるコレクションtrueStringUtil.isNullOrEmpty(String...),
StringUtil.hasValue(String)@Published(tag="architect")
public static byte[] getBytes(java.lang.String string,
java.nio.charset.Charset charset)
java.lang.String#getBytes(Charset)を使用すること。stringがnullだった場合、nullを返す。
stringが空文字だった場合、空のバイト配列を返す。string - 文字列charset - 文字セット@Published(tag="architect")
public static java.lang.String repeat(java.lang.Object repeated,
int times)
String.valueOf(Object)された文字列が繰り返される。repeated - 繰り返し文字列(null不可)times - 繰り返し回数(0以上)@Published(tag="architect")
public static java.lang.String insert(java.lang.String target,
java.lang.String delimiter,
int... intervals)
StringUtil.insert("あいうえお", ",", 1, 1, 1); //-->あ,い,う,えお
target - 対象文字列(null不可)delimiter - 区切り文字(null不可)intervals - 挿入間隔(null不可・0不可)@Published(tag="architect")
public static java.lang.String insertFromRight(java.lang.String target,
java.lang.String delimiter,
int... intervals)
StringUtil.insertFromRight("あいうえお", ",", 1, 1, 1); //-->あい,う,え,お
target - 対象文字列(null不可)delimiter - 区切り文字(null不可)intervals - 文字列後ろからの挿入間隔(null不可・0不可)@Published(tag="architect")
public static java.lang.String insertRepeatedly(java.lang.String target,
java.lang.String delimiter,
int interval)
StringUtil.insertRepeatedly("あいうえお", ",", 1) //-->あ,い,う,え,お
target - 対象文字列(null不可)delimiter - 区切り文字(null不可)interval - 間隔(0不可)@Published(tag="architect")
public static java.lang.String insertRepeatedlyFromRight(java.lang.String target,
java.lang.String delimiter,
int interval)
StringUtil.insertRepeatedlyFromRight("あいうえお", ",", 1) //-->あ,い,う,え,お
target - 対象文字列delimiter - 区切り文字interval - 間隔(0不可)@Published
public static java.lang.String chomp(java.lang.String target,
java.lang.String end)
target - 文字列(null不可)end - 取り除く文字列(null不可){@link - IllegalArgumentException} 引数がnullの場合@Published public static java.lang.String nullToEmpty(java.lang.String value)
nullの場合、空文字を返却する。
StringUtil.nullToEmpty(null); //--> ""
StringUtil.nullToEmpty(""); //--> ""
StringUtil.nullToEmpty("hoge"); //--> "hoge"
value - 変換対象の値@Published
public static java.lang.String join(java.lang.String separator,
java.util.List params)
separator - セパレータparams - 結合する文字列@Published
public static java.util.List split(java.lang.String str,
java.lang.String separator)
str - 分割対象文字列separator - セパレータ@Published
public static java.util.List split(java.lang.String str,
java.lang.String separator,
boolean trim)
str - 文字列separator - セパレータtrim - 分割後の文字列をトリムする場合、true