4 java arraylist tostring java-8
假设我有一个list
名为的对象Option
:
List<Option> opts = ArrayList<Option>();
Run Code Online (Sandbox Code Playgroud)
我有toString()
对象的覆盖Option
.
当我这样做opts.toString()
意味着我做一个List的字符串,我得到一些不必要的逗号,,,,,.
我想改变这一点.请问,有没有一种方法可以更好地将List内部循环到toString每个元素?希望我很清楚.
如果你想将字符串表示粘在一起,你可以使用
opts.stream().map(Object::toString).collect(Collectors.joining()));
Run Code Online (Sandbox Code Playgroud)
但是如果你只想摆脱逗号,即保留一个空格作为分隔符,你可以自定义它
opts.stream().map(Object::toString).collect(Collectors.joining(" ")));
Run Code Online (Sandbox Code Playgroud)
或者,如果你担心过时的分隔符,即你不想在空字符串之间使用分隔符,请使用
opts.stream().map(Object::toString)
.filter(s->!s.isEmpty()).collect(Collectors.joining(" "))
Run Code Online (Sandbox Code Playgroud)
如果您错过括号,请使用其中一个
opts.stream().map(Object::toString).collect(Collectors.joining(" ", "[", "]"))
Run Code Online (Sandbox Code Playgroud)
要么
opts.stream().map(Object::toString)
.filter(s->!s.isEmpty()).collect(Collectors.joining(" ", "[", "]"))
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1041 次 |
最近记录: |