将多个BigInteger值添加到ArrayList
这个问题在这里已经有了答案:
我不确定你在做什么。 你有四种选择:
1.单独添加项目
实例化具体的List
类型,然后为每个项目调用add()
:
List<BigInteger> list = new ArrayList<BigInteger>();
list.add(new BigInteger("12345"));
list.add(new BigInteger("23456"));
2.子类具体的List
类型(双括号初始化)
有些人可能会建议像这样的双大括号初始化
List<BigInteger> list = new ArrayList<BigInteger>() {{
add(new BigInteger("12345"));
add(new BigInteger("23456"));
}};
我建议不要这样做。 你实际上在这里做的是继承ArrayList
,它不是一个好主意。 这种事情可以打破Comparator
, equals()
方法等等。
3.使用Arrays.asList()
另一种方法:
List<BigInteger> list = new ArrayList<BigInteger>(Arrays.asList(
new BigInteger("12345"),
new BigInteger("23456")
));
或者,如果你不需要一个ArrayList
,那么简单如下:
List<BigInteger> list = Arrays.asList(
new BigInteger("12345"),
new BigInteger("23456")
);
我更喜欢上述两种方法之一。
4. Collection
文字(Java 7+)
假设Java 7中的集合文字继续前进,您将可以执行此操作:
List<BigInteger> list = [new BigInteger("12345"), new BigInteger("23456")];
就目前来看,我不认为这个功能已经被证实。
而已。 那些是你的选择。 选一个。
BigIntegerArrays.asList(1, 2, 3, 4);
BigIntegerArrays是一个自定义类,它可以满足您的需求。 如果你经常这样做,这会有所帮助。 这里没有火箭科学 - ArrayList BigIntegerArrays.asList(Integer ... args)将使用FOR循环。
Arrays.asList(new BigInteger("1"), new BigInteger("2"), new BigInteger("3"), new BigInteger("4"));
您可能可以创建一个方法,该方法返回给定一个String的新BigInteger,称之为bi(..)以减小该行的大小。
链接地址: http://www.djcxy.com/p/27709.html上一篇: Adding multiple BigInteger values to an ArrayList
下一篇: How can I initialize a collection and add data on the same line?