想要看起来好看的toString
时间: 2023-08-06 15:25:11 浏览: 90
如果你想让List的toString()方法输出的结果更加美观,可以使用Java 8的stream和lambda表达式来实现。下面是一个示例代码:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
public class MyList<E> extends ArrayList<E> {
@Override
public String toString() {
return "[" + stream()
.map(Object::toString)
.collect(Collectors.joining(", ")) + "]";
}
public static void main(String[] args) {
List<Integer> list = new MyList<>();
list.add(1);
list.add(2);
list.add(3);
System.out.println(list); // 输出 [1, 2, 3]
}
}
```
在这个例子中,我们使用了stream方法和lambda表达式来将List中的元素转换为字符串,并使用Collectors.joining()方法将它们连接成一个字符串。我们首先在开头加上左括号,然后使用stream()方法将List转换为流,使用map()方法将流中的每个元素转换为字符串,最后使用Collectors.joining()方法将所有字符串连接成一个字符串,使用逗号和空格分隔。最后再加上右括号,这样就可以输出一个美观的字符串了。
阅读全文