JavaRush /Java блогы /Random-KK /Кофе-брейк №144. Java тіліндегі массивті Тізімге (ArrayLi...

Кофе-брейк №144. Java тіліндегі массивті Тізімге (ArrayList) қалай түрлендіруге болады. Java тіліндегі тәуелділік инъекциясы

Топта жарияланған

Java тіліндегі массивті тізімге (ArrayList) қалай түрлендіруге болады

Дереккөз: Rrtutors Бүгін сіз массивті Тізімге (ArrayList) түрлендірудің әртүрлі тәсілдерімен танысасыз және олардың әрқайсысындағы code мысалдарын қарайсыз. Кофе-брейк №144.  Java тіліндегі массивті Тізімге (ArrayList) қалай түрлендіруге болады.  Java тіліндегі тәуелділік инъекциясы - 1Массивтер қарапайым және пайдалану оңай болғанымен, олардың бекітілген өлшем сияқты көптеген шектеулері бар. Бұл басына жаңа элемент қосуды және элементтерді қайта реттеуді қиындатады. Collections Framework арқасында біз Тізім, Жиын және Кезекті әртүрлі тәсілдермен жүзеге асыра аламыз. Мысалы, массивтердің әмбебап және икемді тізімін пайдалану (ArrayList). Java тілінде массивді түрлендіру кезінде қолдануға болатын үш әдіс бар. Бұл әдістерге мыналар жатады:
  1. Аңғал немесе дөрекі күш әдісі.
  2. Arrays.asList() әдісі .
  3. Collections.addAll() әдісі .

Аңғал немесе дөрекі күш әдісін қолдану

Бұл әдісте бос массивтен тізім құрылады және массивтің әрбір элементі оған бір-бірден қосылады. Әдіс келесі әрекеттерді орындағаннан кейін жұмыс істейді:
  • Массивті алыңыз.
  • Бос тізім жасаңыз.
  • Жиымдағы элементтерді айналдырыңыз.
  • Енді әрбір элементті массивке қосыңыз.
  • Толық тізімді қайтарыңыз.
Бұл мысал жемістер жиынын жемістер тізіміне түрлендіреді:
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() әдісі

Arrays.asList() әдісін қолдану арқылы жиым Тізім конструкторына конструкторға параметр ретінде жіберіледі. Мұнда массивті тізімге түрлендіру үшін келесі қадамдарды орындау қажет:
  • Массивті алыңыз.
  • Жиымды тізім конструкторында параметр ретінде беру арқылы тізім жасаңыз.
  • Толық тізімді қайтарыңыз.
Мұнда жемістер жиымын тізімге түрлендіру үшін Arrays.asList() әдісін пайдаланудың мысалы берілген:
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() әдісі

Тізімдер Java тіліндегі Collection бумасының бөлігі болғандықтан, Collections.addAll() әдісін пайдаланып алапты тізімге түрлендіруге болады . Бұл әдіс келесі қадамдарды қолданып массивті тізімге түрлендіреді:
  • Біз массив аламыз.
  • Бос тізім жасаңыз.
  • Collections.addAll() әдісі арқылы массивті тізімге түрлендірейік .
  • Біз тізімді қайтарамыз.
Мысалы:
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);

    }

}
Қорытынды:
Массив: [бұршақ, қызанақ, қарбыз ] Тізім: [бұршақ, қызанақ, қарбыз ]

Java тіліндегі тәуелділік инъекциясы

Дереккөз: Орташа Бұл постта сіз Java-да тәуелділік инъекциясының не екенін, ол қайда қолданылатынын және әзірлеушіге қандай артықшылықтар беретінін білесіз. Кофе-брейк №144.  Java тіліндегі массивті Тізімге (ArrayList) қалай түрлендіруге болады.  Java тіліндегі тәуелділік инъекциясы - 2Тәуелділік инъекциясы (DI) бағдарламалық құрал құрамдас бөлігіне сыртқы тәуелділікті қамтамасыз ету процесі болып табылады. Тәуелділік инъекциясы an objectілерді құру мәселелерін оларды пайдаланудан бөлуге бағытталған. Іске асыру принципі берілген қызметті пайдаланғысы келетін an object немесе функция оны қалай жасау керектігін білудің қажеті жоқ деп есептейді. Оның орнына, қабылдаушы «клиент» (нысан немесе функция) өзі білмейтін сыртқы codeтан («инжектор») тәуелділіктерін алады. Міне, жақсы мысал. X сыныбы Y класының кейбір функционалдығын пайдаланған кезде, X сыныбының Y сыныбына тәуелділігі бар деп айтамыз. Тәуелділік инъекциясы сыныптан тыс тәуелді нысандарды жасауға мүмкіндік береді және сол нысандарды сыныпқа әртүрлі жолдармен көрсетеді. Бұл жағдайда тәуелді нысандарды құру және байланыстыру оларға тәуелді сыныптан тыс жылжытылады. Тәуелділік инъекция үлгісі класстардың үш түрін қамтиды:
  1. Клиент сыныбына қызмет көрсететін қызмет көрсету класы.
  2. Клиент класы – қызмет көрсету класына тәуелді класс.
  3. Injector Class - қызмет көрсету класының нысанын клиент сыныбына енгізетін класс.

Тәуелділік инъекциясының түрлері

Тәуелділік инъекциясының үш түрі бар:
  1. Конструктор инъекциясы - конструктор инъекциясы орын алғанда, инжектор клиент сыныбының конструкторы арқылы қызметті (тәуелділік) қамтамасыз етеді.
  2. Setter Injection - инъекцияның бұл түрінде (сонымен қатар меншік инъекциясы ретінде белгілі) инжектор клиент сыныбының жалпы сипаты арқылы тәуелділікті көрсетеді.
  3. Әдіс енгізу - инъекцияның бұл түрінде клиент сыныбы тәуелділікті қамтамасыз ету үшін әдіс(терді) жариялайтын интерфейсті жүзеге асырады. Инжектор клиент сыныбына тәуелділікті қамтамасыз ету үшін осы интерфейсті пайдаланады.

Тәуелділік инъекциясының артықшылықтары

Тәуелділік инъекциясын енгізу бізге келесі артықшылықтарды береді:
  • Кодты қайта пайдалану.
  • Рефакторингтің қарапайымдылығы.
  • Тестілеудің қарапайымдылығы.
Пікірлер
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION