gpt4 book ai didi

java - Java varargs (...) 参数的数据类型是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:29:06 24 4
gpt4 key购买 nike

我正在尝试从 main() 添加信息到我将信息存储在哈希集中的项目类

我有3个类(class)

  1. 项目 - main()

  2. libaray - addBandMembers 函数

  3. Item - addband(String... member)

我正在添加 CD 信息。首先,我添加乐队、歌曲数量、标题 - 这很好用

然后在另一个函数中我尝试添加乐队成员。我想把它们分开。我遇到问题的地方是分配乐队成员..

我知道 Varargs 是如何工作的,只是不确定如何将它分配给一个字符串..

我只会展示一些代码,以使这篇文章简单明了。

这是我的:

主要()

item = library.addMusicCD("Don't Let Go", "Jerry Garcia Band", 15, "acid rock", "jam bands");
if (item != null) {
library.addBandMembers(item, "Jerry Garcia", "Keith Godcheaux");
library.printItem(out, item);
}

然后,这里是调用的第一个函数..

public void addBandMembers(Item musicCD, String... members)
{

//musicCD.addband(members); // both cant find addband function..
//Item.addband(members);

}

然后在另一个类中我尝试添加信息..

 private String members;  


public void addband(String... member)
{
this.members = member; // error

}

如果我创建私有(private)字符串成员;数组那么这个函数下面的错误..不兼容的类型..

 public String getMembers()
{
return members;
}

我该怎么做?

哦,是的,这是我的套装..

public class Library
{
private Set<CD> theCDs = new HashSet<CD>();
private Set<DVD> theDVDs = new HashSet<DVD>();
private Set<Book> theBooks = new HashSet<Book>();

如果您需要查看更多代码,请告诉我..非常感谢..

最佳答案

A varargs argument解析为 array .

所以,改变

private String members;  

private String[] members;  

关于java - Java varargs (...) 参数的数据类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2285235/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com