Java 菜鳥(niǎo)教程

Java 流程控制

Java 數(shù)組

Java 面向?qū)ο?I)

Java 面向?qū)ο?II)

Java 面向?qū)ο?III)

Java 異常處理

Java 列表(List)

Java Queue(隊(duì)列)

Java Map集合

Java Set集合

Java 輸入輸出(I/O)

Java Reader/Writer

Java 其他主題

Java程序來(lái)連接兩個(gè)數(shù)組

Java 實(shí)例大全

在這個(gè)程序中,您將學(xué)習(xí)使用arraycopy和不使用arraycopy在Java中連接兩個(gè)數(shù)組。

示例1:使用arraycopy連接兩個(gè)數(shù)組

import java.util.Arrays;

public class Concat {

    public static void main(String[] args) {
        int[] array1 = {1, 2, 3};
        int[] array2 = {4, 5, 6};

        int aLen = array1.length;
        int bLen = array2.length;
        int[] result = new int[aLen + bLen];

        System.arraycopy(array1, 0, result, 0, aLen);
        System.arraycopy(array2, 0, result, aLen, bLen);

        System.out.println(Arrays.toString(result));
    }
}

運(yùn)行該程序時(shí),輸出為:

[1, 2, 3, 4, 5, 6]

在上面的程序中,我們有兩個(gè)整數(shù)數(shù)組array1和array2。

為了合并(連接)兩個(gè)數(shù)組,我們將其長(zhǎng)度分別存儲(chǔ)在aLen和bLen中。然后,我們創(chuàng)建一個(gè)長(zhǎng)度為aLen + bLen的新整數(shù)數(shù)組結(jié)果。

現(xiàn)在,為了將兩者結(jié)合在一起,我們使用arraycopy()函數(shù)將兩個(gè)數(shù)組中的每個(gè)元素都復(fù)制到結(jié)果。

函數(shù)arraycopy(array1, 0, result, 0, aLen)簡(jiǎn)單地告訴程序從索引0開(kāi)始將array1復(fù)制到從索引0復(fù)制到aLen的結(jié)果。

同樣,arraycopy(array2, 0, result, aLen, bLen)告訴程序從索引0開(kāi)始將array2復(fù)制到結(jié)果,從索引aLen復(fù)制到bLen。

示例2:在不使用arraycopy的情況下串聯(lián)兩個(gè)數(shù)組

import java.util.Arrays;

public class Concat {

    public static void main(String[] args) {
        int[] array1 = {1, 2, 3};
        int[] array2 = {4, 5, 6};

        int length = array1.length + array2.length;

        int[] result = new int[length];
        int pos = 0;
        for (int element : array1) {
            result[pos] = element;
            pos++;
        }

        for (int element : array2) {
            result[pos] = element;
            pos++;
        }

        System.out.println(Arrays.toString(result));
    }
}

運(yùn)行該程序時(shí),輸出為:

[1, 2, 3, 4, 5, 6]

在上面的程序中,我們沒(méi)有使用arraycopy,而是手動(dòng)復(fù)制數(shù)組array1和array2的每個(gè)元素到result。

我們存儲(chǔ)result所需的總數(shù)length,即array1.length + array2. length。然后,我們創(chuàng)建一個(gè)新的長(zhǎng)度數(shù)組結(jié)果。

現(xiàn)在,我們使用for-each循環(huán)遍歷array1的每個(gè)元素并將其存儲(chǔ)在結(jié)果中。 分配后,我們將位置pos增加1,pos ++。

同樣,我們對(duì)array2執(zhí)行相同的操作,并從array1之后的位置開(kāi)始存儲(chǔ)result中的每個(gè)元素。

Java 實(shí)例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清