java - 如何使用数组的 setter 和 getter

标签 java

好的,在我的类图上它显示了

void setVegetable( String veg[] )
String veg[] getVegetables()

只是想知道我如何为此编写语句?

public void setVegetables( String veg[] )  
{  
}

我该如何编写实例变量?
我还是写成

private string vegetables = "";

最佳答案

简单的答案是使用如下的成员定义:

private String[] vegetables;

还有像这样的 setter:

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);
}

关于java - 如何使用数组的 setter 和 getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13680020/

相关文章:

java - Maven 未检测到 Reactor 构建中模块的依赖关系?

java - Kit Kat 与所有更高版本(5.x、6.x 和 7.x)之间的 Android 内容提供程序冲突

java - Android SDK 28源文件和jar文件不匹配

java - Struts2 - JSP EL - 串联似乎不起作用

java - NullPointerException 在actionPerformed 方法中但不在main 中?

java - 指定任务可执行位置 "C:\Program Files (x86)\Java\jdk1.7.0_71\\bin\javac.exe"无效

java - 位移位错误值

java - JUnit 中的错误和失败有什么区别?

java - 解析(Android 的 Java)登录返回未找到对象

java - 从 Java 运行 Linux 命令