Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/401.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
consumptionstore的Java快捷方式_Java_Syntax - Fatal编程技术网

consumptionstore的Java快捷方式

consumptionstore的Java快捷方式,java,syntax,Java,Syntax,是否有一个已经存在的java类可以替代我用来存储原始数据的这个类 package scripts.util.function; import java.io.Serializable; public class ConsumptionStore implements Serializable { /** * Holds data */ private static final long serialVersionUID = -7390032854804146344L; private

是否有一个已经存在的java类可以替代我用来存储原始数据的这个类

package scripts.util.function;

import java.io.Serializable;

public class ConsumptionStore implements Serializable {

/**
 * Holds data
 */
private static final long serialVersionUID = -7390032854804146344L;

private Object[] data;

public ConsumptionStore(Object...data){
    this.data = data;
}

@SuppressWarnings("unchecked")
public <T> T get(int index){
    return (T) data[index];
}

public void set(int index, Object value){
    data[index] = value;
}


}
与构造函数类似,返回的具有方法和

但是,在列表或数组中存储不同类型的值不是一个好主意。您应该创建一个包含您描述的4个字段的专用类

class Person {
    private String name;
    private int age;
    private OwnedHouses[] ownedHouses;
    private OwnedVehicles[] ownedVehicles;
    // ...
}

列表是否足够?为什么不安全?我并没有像上面的例子那样使用这个类来存储更复杂的项,而是用于ConsumptionStore(String,Integer)@kay之类的东西,因为您必须记住什么值位于什么位置,然后将该值转换为正确的类型。如果你做错了,在你执行代码之前你不会知道。如果有一个专用类,您会立即知道,因为代码无法编译。此外,专用对象更具解释性,因为它为字段命名。3年后,当您查看代码时,您是否知道consumptionStore.get(3)
应该返回什么?其他人会知道吗?
class Person {
    private String name;
    private int age;
    private OwnedHouses[] ownedHouses;
    private OwnedVehicles[] ownedVehicles;
    // ...
}