Łączenie tablic jednowymiarowych

0

Jakaś dobra dusza pomoże bardzo początkującemu? Jak połączyć 2 tablice? Chcę wrzucić elementy dwóch tablic do tablica2, ale jest ona 4-elementowa, a po dodaniu 2 tablic elementów będzie 8.

import java.util.*;
import java.util.Scanner;

public class tablice
{
    public static void main(String[] args)
    {
        int[] tablica1 = {1, 3, 5 ,7};
        int[] tablica2 = {2, 4, 6, 8};
        tablica2 = Arrays.copyOf(tablica1,tablica1.length);
        System.out.println(Arrays.toString(tablica2));

    }
}
0

napisz to w taki sposob
tab1 + tab2 = tab3

0

Mam parę głupich pytań:

  • czy mógłby ktoś mnie nakierować, bo nie wiem za co odpowiadają te zera?
        System.arraycopy(array1, 0, array3, 0, array1.length);
        System.arraycopy(array2, 0, array3, array1.length, array2.length);

Czy trzecia tablica która utworzyłem to tak naprawdę jest tablicą 2-wymiarową?
Mam coś takiego. Co mi umyka

public class tablice
{
    public static void main(String[] args)
    {
        int[] array1 = {1,2,3};
        int[] array2 = {4,5,6};
        int[] array3 = new int[array1.length + array2.length];
        System.arraycopy(array1, 0, array3, 0, array1.length);
        System.arraycopy(array2, 0, array3, array1.length, array2.length);
        System.out.print(array3);

    }
}
0
Bogaty Jeleń napisał(a):

Mam parę głupich pytań:

Zaiste.

  • czy mógłby ktoś mnie nakierować, bo nie wiem za co odpowiadają te zera?

https://www.tutorialspoint.com/java/lang/system_arraycopy.htm – czytaj listę parametrów.

Czy trzecia tablica która utworzyłem to tak naprawdę jest tablicą 2-wymiarową?

Nie, dwuwymiarową deklaruje się w ten sposób: int[][] array3

0

Dobra, tutaj zamieniam poszczególne elementy, a czy jest jakiś sposób na wklejenie jednej tablicy do drugiej aby nie podmieniać elementów tylko je dodać. Tylko jak to zrobić, aby tablica np 4-elementowa "w locie stała się n-elementowa aby pomieścić elementy z dwóch tablic? Czy może źle do tego podchodzę?

import java.lang.*;

public class tablice{

    public static void main(String[] args) {

        int arr1[] = { 1, 2, 3, 4, 5, 6 };
        int arr2[] = { 10, 20, 30, 40, 50, 60};

        System.arraycopy(arr1, 0, arr2, 0, 1);
        System.arraycopy(arr1, 5, arr2, 5, 1);
        System.out.print("array2 = ");
        for(int i = 0; i<arr2.length; i++)
        System.out.print(arr2[i]+" ");

    }
}
0

Dlaczego się upierasz przy tablicach? Do takich operacji znacznie wygodniejsze są kolekcje (np. ArrayList).

1 użytkowników online, w tym zalogowanych: 0, gości: 1