假设我有3个列表:['q','w'],['a','s'],['z','x'].如何从这些列表中获取可能的组合列表?所以我得到一个列表[['q','a','z'],['q','s','z']]等等.我为两个方法制作了一个方法,但是无法为N个列表找到一个方法:
static <E> ArrayList combine(ArrayList<E> one,ArrayList<E> two)
{
ArrayList<ArrayList<E>> combs=new ArrayList<ArrayList<E>>();
for(E e:one)
{
for(E e2:two)
{
ArrayList ps=new ArrayList();
ps.add(e);
ps.add(e2);
combs.add(ps);
}
}
return combs;
}
Run Code Online (Sandbox Code Playgroud)
我发现这是由Guava的Sets.cartesianProduct完成的.
Math.sin(Math.PI) 回报 1.2246467991473532E-16
Math.sin(-Math.PI) 回报 -1.2246467991473532E-16
但一定不能归零吗?
虽然从罪3.14和3.15是正确的.