Java 存储枚举双[]字符串三元组的简单设计
你好 在我的应用程序中,我有时会得到一个枚举的三元组、一个双[]数组和一个字符串。意思是:有不同的“类”值(枚举类型)、值本身(double[])和子类(String),更像一个别名。每个类/类型可以有几个别名不同的值。(但相同的值只能有一个别名) 我的第一次尝试是Java 存储枚举双[]字符串三元组的简单设计,java,tuples,Java,Tuples,你好 在我的应用程序中,我有时会得到一个枚举的三元组、一个双[]数组和一个字符串。意思是:有不同的“类”值(枚举类型)、值本身(double[])和子类(String),更像一个别名。每个类/类型可以有几个别名不同的值。(但相同的值只能有一个别名) 我的第一次尝试是 Map<Enum,List<double[]> Map创建一个类来封装关系 public class Relationship { private final String theAlias;
Map<Enum,List<double[]>
Map创建一个类来封装关系
public class Relationship
{
private final String theAlias;
private final double[] theDoubles;
private final your.blah.Enum theEnum;
public Relationship(
final String theAlias,
final double[] theDoubles,
final your.blah.Enum theEnum)
{
this.theAlias = theAlias;
this.theDoubles = theDoubles;
this.theEnum = theEnum;
}
... blah getters ...
}
Map<keyType, Relationship> yourMap;
公共阶级关系
{
私人最终字符串theAlias;
私人最终双[]倍;
私人期末考试your.blah.Enum theEnum;
公共关系(
最后的字符串theAlias,
最后的双倍,
最后一个选项(your.blah.Enum theEnum)
{
this.theAlias=theAlias;
this.theDoubles=theDoubles;
this.theEnum=theEnum;
}
…诸如此类的人。。。
}
绘制你的地图;
keyType可以是String,也可以是your.blah.Enum,具体取决于您希望访问关系对象的方式。创建一个类来封装关系
public class Relationship
{
private final String theAlias;
private final double[] theDoubles;
private final your.blah.Enum theEnum;
public Relationship(
final String theAlias,
final double[] theDoubles,
final your.blah.Enum theEnum)
{
this.theAlias = theAlias;
this.theDoubles = theDoubles;
this.theEnum = theEnum;
}
... blah getters ...
}
Map<keyType, Relationship> yourMap;
公共阶级关系
{
私人最终字符串theAlias;
私人最终双[]倍;
私人期末考试your.blah.Enum theEnum;
公共关系(
最后的字符串theAlias,
最后的双倍,
最后一个选项(your.blah.Enum theEnum)
{
this.theAlias=theAlias;
this.theDoubles=theDoubles;
this.theEnum=theEnum;
}
…诸如此类的人。。。
}
绘制你的地图;
keyType是String或您的.blah.Enum,具体取决于您希望访问关系对象的方式。如何:
Map<Enum,Map<String,double[]>>
Map
如果一个枚举类型可以有多个别名字符串-值列表组合分配给它,这将非常合适。如何:
Map<Enum,Map<String,double[]>>
Map
如果一个枚举类型可以有多个别名字符串-值列表组合分配给它,这将非常合适。这可能是更好的方法,但正如我所说,我不想为它创建新类。这可能是更好的方法,但正如我所说,我不想为它创建新类。