日期:2014-05-20  浏览次数:20761 次

请教一个java SE里的一个问题
假如,定义一个数组长度为5,我再定义一个数组,里面我给它指定的有4个元素,我想用第一个数组来存放第二个数组里的数,有什么办法来解决? 谢谢了!!

------解决方案--------------------
数组拷贝,
把第2个数组的值拷贝到第一个去。
JDK API有现成的方法。
------解决方案--------------------
java.util util 包Arrays中copyOf方法
------解决方案--------------------
楼上两位都说完了 =。=
------解决方案--------------------
int a[] = new int[5];//数组1
int b[] = {1, 2, 3, 4};//数组2
int i = 0;
while(i < b.length)
{
a[i] = b[i];
i++;
}
------解决方案--------------------
static boolean[] copyOf(boolean[] original, int newLength) 
复制指定的数组,截取或用 false 填充(如有必要),以使副本具有指定的长度。 
static byte[] copyOf(byte[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static char[] copyOf(char[] original, int newLength) 
复制指定的数组,截取或用 null 字符填充(如有必要),以使副本具有指定的长度。 
static double[] copyOf(double[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static float[] copyOf(float[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static int[] copyOf(int[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static long[] copyOf(long[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static short[] copyOf(short[] original, int newLength) 
复制指定的数组,截取或用 0 填充(如有必要),以使副本具有指定的长度。 
static <T> T[] 
 copyOf(T[] original, int newLength) 
复制指定的数组,截取或用 null 填充(如有必要),以使副本具有指定的长度。 
static <T,U> T[] 
 copyOf(U[] original, int newLength, Class<? extends T[]> newType) 
复制指定的数组,截取或用 null 填充(如有必要),以使副本具有指定的长度。 

------解决方案--------------------
要么使用java.util.Arrays里面提供的静态方法copy下,
要么自己编码:
Java code

int[] arrayA=new int[5];
int[] arrayB={1,2,3,4};
int index=0;
for(int i:arrayB){
     if(index<arrayB.length){
      arrayA[index]=i;
      index++;    
     }