Java 如何使用数组的setter和getter
好的,在我的类图上显示Java 如何使用数组的setter和getter,java,Java,好的,在我的类图上显示 void setVegetable( String veg[] ) String veg[] getVegetables() 只是想知道我该如何为这个语句编写代码 public void setVegetables( String veg[] ) { } 还要如何编写实例变量? 我还把它写成英文吗 private string vegetables = ""; 你需要像这样的东西 private String[] vegetables; 和setter方法
void setVegetable( String veg[] )
String veg[] getVegetables()
只是想知道我该如何为这个语句编写代码
public void setVegetables( String veg[] )
{
}
还要如何编写实例变量?我还把它写成英文吗
private string vegetables = "";
你需要像这样的东西
private String[] vegetables;
和setter方法
public void setVegetables( String[] veg ) { this.vegetables = veg; )
或者遇到编译错误-字符串数组与字符串数组不同,您需要
private String[] vegetables;
和setter方法
public void setVegetables( String[] veg ) { this.vegetables = veg; )
或出现编译错误-字符串数组与字符串数组不同,我将更改变量:
private String vegetables;
对数组执行以下操作:
private String vegetables[];
然后通常使用setter和getter方法设置和获取实例数组。我会更改变量:
private String vegetables;
对数组执行以下操作:
private String vegetables[];
然后通常使用setter和getter方法设置和获取实例数组。应该是这样的:
public void setvegets(String[]veg){}
它应该是这样的:
public void setvegets(String[]veg){}
在初始化局部变量时,可以如下方式为其赋值:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
初始化局部变量时,可以按如下方式为其赋值:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
简单的答案是使用如下成员定义:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
像这样的二传手:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
但是,您应该记住,数组是可修改的,这意味着如果您像上面描述的setter那样直接存储数组,调用方仍然可以修改数组的内容,因此如果您想要更好的封装,那么复制数组内容是一个好的做法。不过,如果操作大型阵列,这将对性能产生影响。
在这种情况下,setter和getter将如下所示
public void setVegetables( String veg[] ) {
vegetables = Arrays.copyOf(veg, veg.length);
}
public String[] getVegetables() {
return Arrays.copyOf(vegetables, vegetables.length);
}
简单的答案是使用如下成员定义:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
像这样的二传手:
private String[] vegetables = new String[]{"Carrot", "Parsnip"};
private String[] vegetables;
public void setVegetables( String veg[] ) {
vegetables = veg;
}
但是,您应该记住,数组是可修改的,这意味着如果您像上面描述的setter那样直接存储数组,调用方仍然可以修改数组的内容,因此如果您想要更好的封装,那么复制数组内容是一个好的做法。不过,如果操作大型阵列,这将对性能产生影响。
在这种情况下,setter和getter将如下所示
public void setVegetables( String veg[] ) {
vegetables = Arrays.copyOf(veg, veg.length);
}
public String[] getVegetables() {
return Arrays.copyOf(vegetables, vegetables.length);
}
根据类图,您正在查看的实例变量是一个字符串数组。因此,实例成员也必须是字符串[]。 宣言应该是这样的
private String[] vegetables;
public void setVegetables( String vegetables[] ) {
this.vegetables = vegetables;
}
public String[] getVegetables() {
return vegetables;
}
根据类图,您正在查看的实例变量是一个字符串数组。因此,实例成员也必须是字符串[]。 宣言应该是这样的
private String[] vegetables;
public void setVegetables( String vegetables[] ) {
this.vegetables = vegetables;
}
public String[] getVegetables() {
return vegetables;
}
this.vegets=vegets.clone()代码>更清晰。虽然您确实希望使用列表
以及可能比字符串
更具体的内容。但请注意,这会创建指向相同对象的数组副本(这在这里并不重要,因为Stings是不可变的)。调用方可以修改第一个数组中的对象代码>更清晰。虽然您确实希望使用列表
以及可能比字符串
更具体的内容。但请注意,这会创建指向相同对象的数组副本(这在这里并不重要,因为Stings是不可变的)。这允许调用方修改第一个数组中的对象。添加它将不起任何作用?这是一个原始版本的塞特雷斯,它不会做任何事情。我只是在解决你在setplayses
paramAddit上的语法错误,它什么都做不了?这是一个原始版本的塞特雷斯,它不会做任何事情。我只是在setplaets
param上解决您的语法错误