Java - 类中指定的变量类型

时间:2016-02-19 15:04:53

标签: java arrays variables types

我找到了一个例子,其中生成了一个由类似的类定义的变量框:

public class CRandom {
    public String var1;
    public double var2;   
}

然后创建了一个带有'类' -type的变量:

CRandom box = new CRandom();

在此框中可以添加所有变量:

box.var1 = "hello";
box.var2 = 1.234; 

我想添加数组,而不是添加单个变量,如下所示:

box.var1[0] = "hello";
box.var2[0] = 1.234; 

我希望有人能够理解我的问题,因为我理解得太少,不能恰当地说出来,也不知道任何搜索条件。

2 个答案:

答案 0 :(得分:4)

两个选项:

CRandom[] crandoms = new CRandom[10];
crandoms[0] = new CRandom();
crandoms[0].var1 = "hello";
crandoms[0].var2 = 1.234;

或者:

public class CRandom {
    public String[] vars1;
    public double[] vars2;   
}
CRandom box = new CRandom();
box.vars1 = new String[10];
box.vars2 = new double[10];
box.vars1[0] = "hello";
box.vars2[0] = 1.234;

取决于CRandom代表的内容。

答案 1 :(得分:0)

您正在打破封装规则,这是Java等面向对象编程语言的关键租户。最好用一些接口方法封装变量并隐藏实现:

public class CDRandom {

    List<String> var1= new ArrayList<>();
    List<String> var2= new ArrayList<>();

    private void addVar1(String val){
        var1.add(val);
    }
    private void addVar2(String val){
        var2.add(val);
    }
}

...

CDRandom box= new CDRandom();
box.addVar1("someval");

...

通过这种方式,您可以更改存储/处理或计算值的内部方式,而无需其他程序知道其完成方式。