Java:编辑String []中的值

时间:2013-02-28 15:23:59

标签: java

我是C ++ / C#开发人员,但我不熟悉Java。我正在尝试为基本类中的字符串数组实现setter和getter,如下所示:

private String[] values = new String[35];

public String get_val(int idx) 
{
    return values[idx];
}

public void set_val(int idx, String val) 
{
    values[idx] = val;
}

当我调用set_val函数时,它将更新第n个字符串的值。运行如下代码后:

row.set_val(0, row.get_val(0) + "1");
row.set_val(0, row.get_val(1) + "2");
row.set_val(0, row.get_val(2) + "3");

string foo = row.get_val(0);

string foo = row.get_val(0);时,第0个值回到原始值。我错过了数组和Java的概念吗?这看起来很简单。

提前致谢!

1 个答案:

答案 0 :(得分:1)

这应该可以正常编程,但我会考虑使用java内置的ArrayList结构。它是预先煮熟的java,如果你初始化大小,

private List<String> strings = new ArrayList<String>(35);

你应该得到相同的(如果没有更好的运行时性能,不需要进行任何边界检查)

private final MAX_SIZE = 35;

public String get_val(int idx)
{
    if(idx<strings.size())
        return strings.get(idx);
    else
        return null;
}

public void set_val(int idx, String val)
{
    if(idx<MAX_SIZE)
        strings.add(val,idx);
    else
        //throw an exception if that's how you really want to do it
}