JavaRush /Java Blogu /Random-AZ /Kofe fasiləsi №144. Java-da massivi Siyahıya (ArrayList) ...

Kofe fasiləsi №144. Java-da massivi Siyahıya (ArrayList) necə çevirmək olar. Java-da asılılıq enjeksiyonu

Qrupda dərc edilmişdir

Java-da massivi Siyahıya (ArrayList) necə çevirmək olar

Mənbə: Rrtutors Bu gün siz massivi Siyahıya (ArrayList) çevirməyin müxtəlif yollarını öyrənəcək və onların hər birindəki kod nümunələrinə baxacaqsınız. Kofe fasiləsi №144.  Java-da massivi Siyahıya (ArrayList) necə çevirmək olar.  Java-da asılılıq enjeksiyonu - 1Massivlər sadə və istifadəsi asan olsa da, onların sabit ölçü kimi bir çox məhdudiyyətləri var. Bu, başlanğıcda yeni element əlavə etməyi və elementləri yenidən təşkil etməyi çətinləşdirir. Collections Framework sayəsində biz List, Set və Queue funksiyalarını müxtəlif üsullarla həyata keçirə bilərik. Məsələn, massivlərin universal və çevik siyahısından (ArrayList) istifadə etməklə. Java-da massivi çevirərkən istifadə edə biləcəyiniz üç üsul var. Bu üsullara aşağıdakılar daxildir:
  1. Sadəlövh və ya Qəddar Qüvvət Metodiyası.
  2. Arrays.asList() metodu .
  3. Collections.addAll() metodu .

Sadəlövh və ya kobud güc metodundan istifadə etməklə

Bu üsulda boş massivdən siyahı yaradılır və massivin hər bir elementi bir-bir ona əlavə edilir. Metod aşağıdakıları etdikdən sonra işləyir:
  • Massivi alın.
  • Boş siyahı yaradın.
  • Massivdəki elementlər arasında dövr edin.
  • İndi hər bir elementi seriala əlavə edin.
  • Tam siyahını qaytarın.
Bu nümunə bir sıra meyvələri meyvələr siyahısına çevirir:
import java.util.ArrayList;

import java.util.Arrays;

import java.util.List;

public class NaivemethodExample {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = new ArrayList<>();

        for (T t : array) {

            list.add(t);

        }

        return list;

    }

    public static void main(String args[])

    {

        String array[]

            = { "Mangoes", "Oranges", "berries" };

        System.out.println("Array: "

                           + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}

Arrays.asList() metodu

Arrays.asList() metodundan istifadə edərək massiv Konstruktora parametr kimi List konstruktoruna ötürülür. Burada massivi siyahıya çevirmək üçün aşağıdakı addımları yerinə yetirməlisiniz:
  • Massivi alın.
  • Siyahı konstruktorunda massivi parametr kimi ötürərək siyahı yaradın.
  • Tam siyahını qaytarın.
Meyvələr massivini siyahıya çevirmək üçün Arrays.asList() metodundan istifadə nümunəsi:
package asList;

import java.util.Arrays;

import java.util.List;

public class asListExample {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = Arrays.asList(array);

        return list;

    }

    public static void main(String args[])

    {

        String array[]

            = { "Mangoes", "Oranges", "berries" };

        System.out.println("Array: "

                          + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}

Collections.addAll() metodu

Siyahılar Java-da Kolleksiya paketinin bir hissəsi olduğundan, siz Collections.addAll() metodundan istifadə edərək massivi siyahıya çevirə bilərsiniz . Bu üsul aşağıdakı addımlardan istifadə edərək massivi siyahıya çevirir:
  • Bir massiv alırıq.
  • Boş siyahı yaradın.
  • Collections.addAll() metodundan istifadə edərək massivi siyahıya çevirək .
  • Siyahı qaytarırıq.
Misal:
import java.util.ArrayList;

import java.util.Arrays;

import java.util.Collections;

import java.util.List;

public class collectionsall {

    public static <T> List<T> convertArrayToList(T array[])

    {

        List<T> list = new ArrayList<>();

        Collections.addAll(list, array);

        return list;

    }



    public static void main(String args[])

    {

        String array[]

            = { "peas", "tomatoes", "water melons" };

        System.out.println("Array: "

                           + Arrays.toString(array));

        List<String> list = convertArrayToList(array);

        System.out.println("List: " + list);

    }

}
Nəticə:
Massiv: [noxud, pomidor, qarpız ] Siyahı: [noxud, pomidor, qarpız ]

Java-da asılılıq enjeksiyonu

Mənbə: Orta Bu yazıda Java-da asılılıq inyeksiyasının nə olduğunu, harada istifadə edildiyini və tərtibatçıya hansı faydalar verdiyini öyrənəcəksiniz. Kofe fasiləsi №144.  Java-da massivi Siyahıya (ArrayList) necə çevirmək olar.  Java-da Dependency Injection - 2Dependency Injection (DI) proqram komponentinə xarici asılılığın təmin edilməsi prosesidir. Asılılıq inyeksiyası obyektlərin yaradılması problemlərini onlardan istifadə etməkdən ayırmaq məqsədi daşıyır. İcra prinsipi nəzərdə tutur ki, verilmiş xidmətdən istifadə etmək istəyən obyekt və ya funksiya onu necə yaratmağı bilməlidir. Əvəzində, qəbul edən "müştəri" (obyekt və ya funksiya) öz asılılıqlarını xarici koddan ("injektor") alır ki, ondan xəbərsizdir. Budur yaxşı bir nümunə. X sinfi Y sinifinin bəzi funksionallığından istifadə etdikdə, biz deyirik ki, X sinfi Y sinfindən asılılığa malikdir. Asılılıq inyeksiyası sizə sinifdən kənar asılı obyektlər yaratmağa imkan verir və müxtəlif üsullarla həmin obyektləri sinfə təqdim edir. Bu halda, asılı obyektlərin yaradılması və bağlanması onlardan asılı olan sinifdən kənara köçürülür. Asılılıq inyeksiya nümunəsi üç növ sinifdən ibarətdir:
  1. Müştəri sinfinə xidmət göstərən Xidmət Sinfi.
  2. Client Class - xidmət sinfindən asılı olan sinif.
  3. Injector Class, xidmət sinfi obyektini müştəri sinfinə yeridən sinifdir.

Asılılıq inyeksiyasının növləri

Üç növ asılılıq inyeksiyası var:
  1. Konstruktor inyeksiyası - Konstruktor inyeksiyası baş verdikdə, injektor müştəri sinfinin konstruktoru vasitəsilə xidmət (asılılıq) təmin edir.
  2. Setter Injection - Bu inyeksiya növündə (həmçinin mülkiyyət inyeksiyası kimi tanınır) injektor müştəri sinfinin ictimai mülkiyyəti vasitəsilə asılılığı ifşa edir.
  3. Metod injection - Bu inyeksiya növündə müştəri sinfi asılılığı təmin etmək üçün metod(lar)ı elan edən interfeys həyata keçirir. Enjektor bu interfeysdən müştəri sinfindən asılılığı təmin etmək üçün istifadə edir.

Asılılıq Enjeksiyonunun Faydaları

Asılılıq inyeksiyasının tətbiqi bizə aşağıdakı üstünlükləri verir:
  • Kodun təkrar istifadəsi.
  • Refaktorinq asanlığı.
  • Test asanlığı.
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION