Java8のStringJoinerの使い方
Java8からjava.util.StringJoinerクラスが追加されました。
StringJoinerは引数が文字列のコンストラクタになるので以下のようにnewするとエラーとなります。
StringJoiner joiner = new StringJoiner();
空文字を指定するとエラーにはなりません。
StringJoiner joiner = new StringJoiner("");
引数にはセパレータを指定しますが、セパレータがなければ上記のように空文字にします。
以下、例です。
import java.util.StringJoiner; public class Sample { public static void main(String[] args) { StringJoiner joiner = new StringJoiner(""); joiner.add("a"); joiner.add("i"); joiner.add("u"); joiner.add("e"); joiner.add("o"); System.out.println(joiner); } }
結果は以下のようになります。
aiueo
セパレータに”,”を指定すると、以下のような結果になります。
a,i,u,e,o
StringJoinerは第二引数、第三引数も指定でき、第二引数はプレフィックス、第三引数は差フィックスを指定します。
以下、例です。
import java.util.StringJoiner; public class Sample { public static void main(String[] args) { StringJoiner joiner = new StringJoiner(",","[","]"); joiner.add("a"); joiner.add("i"); joiner.add("u"); joiner.add("e"); joiner.add("o"); System.out.println(joiner); } }
結果は以下のようになります。
[a,i,u,e,o]
・setEmptyValue
setEmptyValueと言うメソッドが用意されており、addしていない場合のデフォルト値をセットするメソッドです。addしていない場合は、プレフィックス、サフィックスを指定していても無視されてsetEmptyValueで指定した文字列が表示されます。
以下、例です。
import java.util.StringJoiner; public class Sample { public static void main(String[] args) { StringJoiner joiner = new StringJoiner(",","[","]");// プレフィックス、サフィックスを指定している joiner.setEmptyValue("default"); System.out.println(joiner); } }
結果は以下のようになります。
default
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^
コメント