如何将字符串添加到数组?

时间:2015-02-22 21:11:09

标签: java arrays string methods

我一直想弄清楚如何在数组中添加字符串。 我有一个表示列表的类,我想通过调用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;

}

希望这更好。

1 个答案:

答案 0 :(得分:0)

这一行

option = new String[20];

正在清除您的清单。

例如,您应该仅在构造函数中初始化列表。 您的菜单类可以是:

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

}

经过测试和工作!

致以最诚挚的问候,

米格尔