Java varargs(…)参数的数据类型是什么?
我正在尝试从main()添加信息 将信息存储在哈希集中的items类 我有三节课Java varargs(…)参数的数据类型是什么?,java,Java,我正在尝试从main()添加信息 将信息存储在哈希集中的items类 我有三节课 项目-main() libaray-addBandMembers函数 Item-addband(字符串…成员) 我正在添加CD信息。首先,我添加了乐队,歌曲,标题-这很好 然后在另一个函数中,我尝试添加乐队成员。我想把这些分开。 我遇到的问题是分配乐队成员 我知道Varargs是如何工作的,只是不知道如何将其分配给字符串 我将只展示一些代码,使这篇文章简洁明了 这就是我所拥有的: Main() 然后,这里调用的第一
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
}
如果我使私有字符串成员;阵列
然后此函数将显示以下错误。。不兼容类型
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>();
公共类库
{
private Set theCDs=new HashSet();
private Set theDVDs=new HashSet();
private Set theBooks=new HashSet();
如果您需要查看更多代码,请告诉我。。
非常感谢您。更改getter以返回字符串数组而不是字符串。字符串…成员为您提供了一个数组,因此您要查看的是字符串[]类型的成员 我认为,一旦你明白了这一点,你就有点克服了问题的症结。A解决了一个问题 所以,改变
private String members;
到
如何将公共字符串getMembers()函数作为数组返回?将
公共字符串getMembers()
替换为公共字符串[]getMembers()
。请单击“数组”后面提供的链接要了解有关数组的更多信息。如果您想更进一步,请转到集合API:a列表
比字符串[]
更容易/更好/更好处理。使用您关于集合的建议..我是否可以像这样处理私有列表成员,而不是私有字符串[]成员们?老实说,我认为最好退一步,在这里(重新)做“覆盖基础的跟踪”:老实说,再一次,所有这些看起来都是因为您对如何用Java编写代码缺乏基本的了解,而这不仅仅是varargs。我强烈建议您查看关于“覆盖基础的跟踪”的链接我以前建议过。它应该能让你了解所有你需要知道的琐碎事情。我也有点惊讶,你在你的问题中发布的代码显示了这么多。在发布的代码中有了经过验证的知识,你应该已经能够自己解决这些小问题了。发布的代码是从其他人那里复制的吗?
private String members;
private String[] members;