用java.util.Arrays.fill填充数组是随机填充到任意位置还是有一定的条件依据?
3个回答
展开全部
看下源码不就行了,以int的数组为例,提供两种填充方式:
// 方式一
public static void fill(int[] a, int val) {
for (int i = 0, len = a.length; i < len; i++)
a[i] = val;
}
// 方式二
public static void fill(int[] a, int fromIndex, int toIndex, int val) {
rangeCheck(a.length, fromIndex, toIndex); // 注一
for (int i = fromIndex; i < toIndex; i++)
a[i] = val;
}
// 注一 参数范围检查,看看是不是越界之类的
private static void rangeCheck(int length, int fromIndex, int toIndex) {
if (fromIndex > toIndex) {
throw new IllegalArgumentException(
"fromIndex(" + fromIndex + ") > toIndex(" + toIndex + ")");
}
if (fromIndex < 0) {
throw new ArrayIndexOutOfBoundsException(fromIndex);
}
if (toIndex > length) {
throw new ArrayIndexOutOfBoundsException(toIndex);
}
}
很明显就是,给个值(val),填上呗
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询