【发布时间】:2014-12-14 03:47:21
【问题描述】:
所以我有一个程序询问(输入)东西(变量 int 字符串等),然后这些元素传递给构造函数。但是,每次我输入新值时,以前的值都会被覆盖。我该怎么做让它创建一个新的而不是覆盖以前的值?我对 Java 很陌生,我有点困惑。这是我的代码:
Scanner scan1 = new Scanner(System.in); //user input the name
System.out.print("name: \n");
String name = scan1.nextLine();
然后将其传递给构造函数:
Balloon aballoon = new Balloon(name);
我的构造函数看起来像
public Balloon(String name){
setName(name);
以及它的方法
public String thename
public void setName(String name){
if(name.matches("[a-zA-Z]+$")){
thename = name;
}
所以是的,我想知道如何构建多个对象(字符)而不覆盖前一个对象,以及如何存储它们(字符)。
谢谢
【问题讨论】:
-
你可以使用数组
-
你能告诉我怎么做吗?就像我说的我是一个初学者。但是我以后需要能够检索/删除/编辑字符——一个数组是否只是在其中转储一堆数据?原因如果是,我将无法检索特定元素?
-
首先,我建议使用除 Character 以外的类名,因为这是一个 java 包装类(已使用),可能会引起混淆;确实,当我第一次阅读此内容时,我感到非常困惑。另外,在编写程序时,您是否知道需要制作多少个“角色”,或者会根据不同的事情而改变?
-
这不是真正的班级名称,我只是为了隐私而更改了它(编辑后使其更易于阅读)。而且我必须能够输入尽可能多的“气球”,没有限制.
-
我发布了一个答案,解释了如何制作和使用 ArrayList,以及如何遍历该 ArrayList 以修改/删除数据。
标签: java methods input constructor getter-setter