Java 不使用抑制警告的常规二维阵列可用的替代方案

Java 不使用抑制警告的常规二维阵列可用的替代方案,java,arrays,generics,Java,Arrays,Generics,如果我想从一个函数返回一个org.apache.commons.lang3.tuple.MutablePair的2d数组,是否存在任何设计问题。以下为功能原型: public MutablePair[][] f() { //code goes here } 注意,由于java不允许泛型数组,我必须返回一个原始类型并抑制编译器生成的相应警告 另一种选择是使用List,这对我来说太冗长了。此外,我并不真正需要一个列表接口(2d数组的大小是固定的)。我也可以使用ArrayList,但这也太冗

如果我想从一个函数返回一个
org.apache.commons.lang3.tuple.MutablePair
的2d数组,是否存在任何设计问题。以下为功能原型:

public MutablePair[][] f() {
    //code goes here
}

注意,由于java不允许泛型数组,我必须返回一个原始类型并抑制编译器生成的相应警告

另一种选择是使用
List
,这对我来说太冗长了。此外,我并不真正需要一个列表接口(2d数组的大小是固定的)。我也可以使用ArrayList,但这也太冗长了。我想避免这些

所以我的问题是这样的函数声明会产生什么问题。声明和使用这些函数是完全不可接受的。在这种情况下,一般建议的做法是什么。还是最好使用冗长的方式


欢迎提出建议。

的建议可能与您相关。。它们允许非整数键,您必须将这些值设置为正则整数,并且有一系列可能对您有用的值。特别是可能是一个很好的匹配。

你是否考虑过创建一个扩展类<代码> ItBoin扩展MutabalBoe并创建一个数组?@ AsHaJi,它只是一个额外的类,没有额外的功能。这就像创建我自己的结对类一样好。那么,像这样编写新类有什么意义呢。此外,如果明天我需要一对弦,那么我需要另一门课。所以我认为这不是一个好主意。“请注意,由于java不允许泛型数组,我必须返回原始类型并抑制编译器生成的相应警告。”返回
MutablePair[][]
并具有该类型的变量非常好,等等。你只需要把它铸造成那种类型就可以了。@newacct这就是为什么我认为这种铸造会有潜在的风险。我是java新手,因此无法正确评估。这就是问题所在。