Java 获取现有ArrayList并从getter向其添加值
所以我想知道如何才能从ArrayList中获取当前值并向其添加值Java 获取现有ArrayList并从getter向其添加值,java,arraylist,Java,Arraylist,所以我想知道如何才能从ArrayList中获取当前值并向其添加值 private List<String> friends; public Profile(List<String> friends){ this.friends = friends } public List<String> getFriends() { return friends; } public void addFriend(List<String> f
private List<String> friends;
public Profile(List<String> friends){
this.friends = friends
}
public List<String> getFriends() {
return friends;
}
public void addFriend(List<String> friends) {
this.friends = getFriends() + friends;
}
私人好友列表;
公开资料(列出朋友){
这是我的朋友
}
公共列表getFriends(){
回报朋友;
}
public void addFriend(列出好友){
this.friends=getFriends()+friends;
}
显然,“addFriend”方法无法工作,因为运算符不能应用于ArrayList。它被认为是它应该如何工作的一个例子。抓取getFriends()方法并对其应用另一个列表。那么,有没有办法完成这项任务呢?抓取getter数组列表并向其添加值
注意:已经假设数据存储在hashmap中的某个位置,其中包含一个键和一个值作为列表为什么不迭代并添加到
朋友
字段?它已经是一个列表了
public void addFriend(List<String> friends) {
for (String friend : friends) {
this.friends.add(friend);
}
}
public void addFriend(列出好友){
用于(字符串朋友:朋友){
this.friends.add(friends);
}
}
您可以使用以下功能:
public void addFriend(List<String> friends) {
this.friends.addAll(friends);
}
public void addFriend(列出好友){
this.friends.addAll(friends);
}
您可以使用ArrayList.addAll(集合c)
方法:
public void addFriend(List<String> friends) {
this.friends.addAll(friends);
}
public void addFriend(列出好友){
this.friends.addAll(friends);
}
您可以创建两种不同的方法:
通过这种方式,您可以将朋友列表添加到当前列表中
public void addFriend(List<String> friends) {
this.friends.addAll(friends);
}
使用这种方法,您将有两种不同的添加朋友的行为。所有这些答案都会起作用,我还可以添加一个我自己的解决方案
public void addFriend(List<String> friends) {
this.friends.addAll(friends.stream().collect(Collectors.toList()));
}
public void addFriend(列出好友){
this.friends.addAll(friends.stream().collect(Collectors.toList());
}
唯一的缺点是您正在创建不必要的对象,这只会降低计算机速度,并使用更多资源(如内存)。add
方法和addAll
方法更具可读性,更有效地利用资源。因此,您希望重新发明Collection 35; addAll
;P
public void addFriend(List<String> friends) {
this.friends.addAll(friends.stream().collect(Collectors.toList()));
}