【发布时间】:2022-06-17 19:51:41
【问题描述】:
我正在将Strings 的数组转换为MyStrings 的数组。
String[] arystrs = { "abc", "xyz" };
MyString[] arymystrs = new MyString[this.arystrs.length];
for (int i = 0; i < arystrs.length; i++) {
arymystrs[i] = new MyString(arystrs[i]); // convert by constructor
}
除此之外还有更优雅的解决方案(例如使用集合/流)吗?
我知道 stream/map/collect 正在处理集合(列表、地图),但不确定它如何处理数组。
【问题讨论】:
-
List.of(arystrs).stream().map(str -> new MyString(str)).collect(Collectors.toList());这将返回列表可能存在一些语法问题,因为它只是在没有任何 ide 的情况下键入。如果需要,对于转换后的列表,还有一个 .toArray() 用于数组转换。 -
@MahadevK 你可以这样回答
标签: java arrays collections