CodeGym/Java блог/Случаен/Java System.arraycopy() метод
John Squirrels
Ниво
San Francisco

Java System.arraycopy() метод

Публикувано в групата

Какво представлява методът Java System.arraycopy()?

Методът java.lang.System.arraycopy() копира изходен масив в конкретна начална позиция до дестинация при даден индекс.
Този метод принадлежи към класа java.lang.System . Той копира съдържанието на подмасив с определена дължина от даден изходен масив в друг масив, наречен целеви масив. Изходният масив се нарича src, а целевият масив като dest . Броят на елементите се дава от аргумента len .

Декларация на метод Java System.arraycopy().

Декларацията на метода за метода java.lang.System.arraycopy() в класа java.lang е Howто следва:
public static void arraycopy(Object src, int srcIndex, Object dest, int destIndex, int len)

Параметри

Следват параметрите на метода arraycopy :
  1. src : Това е изходният масив.

  2. srcIndex : Това е началният индекс на изходния масив.

  3. dest : Това е целевият масив.

  4. destIndex : Това е началният индекс на целевия масив.

  5. len : Това е броят на елементите, които трябва да бъдат копирани от изходния масив в целевия масив.

Функционалност

Методът arraycopy копира данни от src , започвайки от srcIndex до srcIndex +( len - 1) елементи, към масива dest от destIndex до destIndex + ( len - 1).

Върната стойност

Методът arraycopy има тип връщане void , което означава, че не връща нищо.

Пример

public class Example {

    public static void main(String[] args) {

        String[] src = { "Monday","Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
        String[] dest = { "January", "February", "March", "April", "May", "June", "July", "August"};

        int srcIndex = 2;
        int destIndex = 3;
        int len = 2;

        //print number of elements that need to be copied
        //from the source to the destination array
        System.out.println("len : " + len);

        //print source index
        System.out.println("srcIndex : " + srcIndex);

        //print elements of the source array
        System.out.print("src : ");
        for (int i = 0; i < src.length; i++)
            System.out.print(src[i] + " ");
        System.out.println("");

        //print destination index
        System.out.println("destIndex : " + destIndex);

        //print elements of the destination array
        System.out.print("dest : ");
        for (int i = 0; i < dest.length; i++)
            System.out.print(dest[i] + " ");
        System.out.println("");

        // Use of arraycopy() method
        System.arraycopy(src, srcIndex, dest, destIndex, len);
        // this method copies the 'len' no of elements
        // from the src array to the dest array using the srcIndex
        // and destIndex as reference points in both the arrays


        // Print elements of destination after
        System.out.print("final destination array : ");
        for (int i = 0; i < dest.length; i++)
            System.out.print(dest[i] + " ");
    }
}

Изход

len : 2 srcIndex : 2 src : понеделник вторник сряда четвъртък петък събота неделя destIndex : 3 dest : януари февруари март април май юни юли август крайна дестинация масив : януари февруари март сряда четвъртък юни юли август

Пример за промяна на параметрите

// Example of changing parameters
         srcIndex = 4;
         destIndex = 5;
         len = 1;

Изход

len : 1 srcIndex : 4 src : понеделник вторник сряда четвъртък петък събота неделя destIndex : 5 dest : януари февруари март април май юни юли август крайна дестинация масив : януари февруари март април май петък юли август

Обяснение

В горния code дефинирахме два масива src[] и dest[] . След това сме дефинирали srcIndex и destIndex , за да дефинираме референтните позиции и за двата масива. В първия пример методът System.arraycopy копира елементите от изходния масив src[] , започващ от индекс 2 и завършващ на индекс 3 (тъй като len = 2), в целевия масив, започвайки от индекс 3. След това извежда крайния дестинационен масив след копиране на елементите. Във втория пример методът System.arraycopy копира 1 елемент (защото len = 1) от изходния масивsrc[] , започвайки от индекс 4, до целевия масив, започвайки от индекс 5, и също извежда крайния целеви масив след копиране на елементите.

Заключение

До края на тази публикация се надяваме, че сте се запознали с метода java.lang.System.arraycopy в Java. Продължете да практикувате за по-задълбочено владеене на концепцията. Дотогава продължавайте да растете и да блестите!
Коментари
  • Популярен
  • Нов
  • Стар
Трябва да сте влезли, за да оставите коментар
Тази страница все още няма коментари