点击一次 random 生成一个数之后,直接用 二维数组装 不是更好吗?如果用list转也可以。因为 list和数组都是有序的。可以按照循环变量 从list取值然后赋给二维数组值啊
package my.csdn;import java.util.ArrayList; import java.util.List;public class ArraylistClass { public List getRandomList(){ List list = new ArrayList(); for(int i=0;i<9;i++){ long num =Math.round(Math.random()*10); list.add(num); } return list; }
public List getTwoDimensionalArray(List<Double> list){ List listOne = new ArrayList(); List listTwo = new ArrayList(); List listThree = new ArrayList(); for(int i=0;i<9;i++){ if(i<3) listOne.add(list.get(i)); else if(i<6) listTwo.add(list.get(i)); else listThree.add(list.get(i)); } List DimensionArray = new ArrayList(); DimensionArray.add(listOne); DimensionArray.add(listTwo); DimensionArray.add(listThree); return DimensionArray ; }
public static void main(String[] args){ ArraylistClass listClass = new ArraylistClass(); ArrayList dimensionList = (ArrayList) listClass.getTwoDimensionalArray(listClass.getRandomList());//答案is here. }}因为你说要3个。所以我写死了。如果要动态的,就加个判断。稍微改一下就可以了。思路在这里,考虑到你新手,所以帮你写代码了
import java.util.List;public class ArraylistClass {
public List getRandomList(){
List list = new ArrayList();
for(int i=0;i<9;i++){
long num =Math.round(Math.random()*10);
list.add(num);
}
return list;
}
public List getTwoDimensionalArray(List<Double> list){
List listOne = new ArrayList();
List listTwo = new ArrayList();
List listThree = new ArrayList();
for(int i=0;i<9;i++){
if(i<3)
listOne.add(list.get(i));
else if(i<6)
listTwo.add(list.get(i));
else
listThree.add(list.get(i));
}
List DimensionArray = new ArrayList();
DimensionArray.add(listOne);
DimensionArray.add(listTwo);
DimensionArray.add(listThree);
return DimensionArray ;
}
public static void main(String[] args){
ArraylistClass listClass = new ArraylistClass();
ArrayList dimensionList = (ArrayList) listClass.getTwoDimensionalArray(listClass.getRandomList());//答案is here.
}}因为你说要3个。所以我写死了。如果要动态的,就加个判断。稍微改一下就可以了。思路在这里,考虑到你新手,所以帮你写代码了