Java数组扩容后输出结果异常:为什么我的数组元素值都比预期大了9?

java数组扩容后输出结果异常:为什么我的数组元素值都比预期大了9?

Java数组扩容及数据输出异常分析

本文分析一段Java代码中数组扩容后输出结果异常的原因。代码意图是对整数数组进行扩容,添加新元素。原始数组为{1, 2, 3},添加元素4后,预期结果为{1, 2, 3, 4},但实际输出却是{10, 11, 12, 13}。

问题代码及分析:代码使用创建新数组的方式扩容。首先创建一个比原数组长度大一的数组arr2,复制arr1元素到arr2,然后添加新元素4。最后将arr2赋值给arr1,完成扩容。

问题代码片段:

立即学习“Java免费学习笔记(深入)”;

public class ArrayExpand {    public static void main(String[] args) {        int arr1[] = {1, 2, 3};        int arr2[] = new int[arr1.length + 1];        System.arraycopy(arr1, 0, arr2, 0, arr1.length); //更优的数组复制方式        arr2[arr1.length] = 4;        arr1 = arr2;        for (int i = 0; i < arr1.length; i++) {            System.out.print(arr1[i] + "t"); //问题出在这里        }    }}

登录后复制

本文来自互联网或AI生成,不代表软件指南立场。本站不负任何法律责任。

如若转载请注明出处:http://www.down96.com/tutorials/8369.html

热心网友热心网友
上一篇 2025-04-11 15:57
下一篇 2025-04-11 15:57

相关推荐

本站[软件指南]所有内容来自互联网投稿或AI智能生成,并不代表软件指南的立场。