如何将字符串添加到数组?
How can I add a string to an array?
我一直在尝试弄清楚如何将字符串添加到数组中。
我有一个代表列表的 class,我想通过调用 addTo
将 "cup" 添加到列表中。
我试过这个,但它填满了整个数组,然后当再次调用该方法时它会覆盖整个数组:
private String[] option;
private int position;
public Menu()
{
option = new String[0];
position = 0;
}
public void addTo(java.lang.String option)
{
option = new String[20];
++position;
option[position] = option;
}
希望这会更好。
这一行
option = new String[20];
正在清除您的列表。
例如,您应该只在构造函数中初始化您的列表。
您的菜单 class 可以是这样的:
public class Menu{
private final int LIMIT = 20;
private String[] option;
private int position;
public Menu()
{
option = new String[LIMIT];
position = 0;
}
public void addTo(String item)
{
if(position == LIMIT)
{
// We do not want a IndexOutOfBoundsException here
return;
}
option[position++] = item;
}
public void printList(){
for(int i = 0; i< LIMIT; i++)
{
System.out.println( i + ": " + option[i] );
}
}
public static void main(String[] args)
{
Menu m = new Menu();
m.addTo("book");
m.addTo("cup");
m.addTo("test");
m.printList();
}
}
已测试并正常工作!
此致,
米格尔
我一直在尝试弄清楚如何将字符串添加到数组中。
我有一个代表列表的 class,我想通过调用 addTo
将 "cup" 添加到列表中。
我试过这个,但它填满了整个数组,然后当再次调用该方法时它会覆盖整个数组:
private String[] option;
private int position;
public Menu()
{
option = new String[0];
position = 0;
}
public void addTo(java.lang.String option)
{
option = new String[20];
++position;
option[position] = option;
}
希望这会更好。
这一行
option = new String[20];
正在清除您的列表。
例如,您应该只在构造函数中初始化您的列表。 您的菜单 class 可以是这样的:
public class Menu{
private final int LIMIT = 20;
private String[] option;
private int position;
public Menu()
{
option = new String[LIMIT];
position = 0;
}
public void addTo(String item)
{
if(position == LIMIT)
{
// We do not want a IndexOutOfBoundsException here
return;
}
option[position++] = item;
}
public void printList(){
for(int i = 0; i< LIMIT; i++)
{
System.out.println( i + ": " + option[i] );
}
}
public static void main(String[] args)
{
Menu m = new Menu();
m.addTo("book");
m.addTo("cup");
m.addTo("test");
m.printList();
}
}
已测试并正常工作!
此致,
米格尔