JavaRush /وبلاگ جاوا /Random-FA /کافه استراحت شماره 144. نحوه تبدیل یک آرایه به فهرست (Arr...

کافه استراحت شماره 144. نحوه تبدیل یک آرایه به فهرست (ArrayList) در جاوا. تزریق وابستگی در جاوا

در گروه منتشر شد

نحوه تبدیل آرایه به فهرست (ArrayList) در جاوا

منبع: Rrtutors امروز با روش‌های مختلف تبدیل یک آرایه به فهرست (ArrayList) آشنا می‌شوید و به نمونه‌های کد در هر یک از آنها نگاه می‌کنید. کافه استراحت شماره 144.  نحوه تبدیل یک آرایه به فهرست (ArrayList) در جاوا.  تزریق وابستگی در جاوا - 1اگرچه آرایه ها ساده و آسان برای استفاده هستند، اما محدودیت های زیادی مانند اندازه ثابت دارند. این کار اضافه کردن یک عنصر جدید در ابتدا و تنظیم مجدد عناصر را دشوار می کند. به لطف Framework مجموعه ها، می توانیم List، Set و Queue را به روش های مختلف پیاده سازی کنیم. به عنوان مثال، استفاده از یک لیست جهانی و انعطاف پذیر از آرایه ها (ArrayList). برای تبدیل یک آرایه در جاوا سه روش وجود دارد که می توانید از آنها استفاده کنید. این روش ها عبارتند از:
  1. روش ساده لوحانه یا Brute Force.
  2. متد Arrays.asList() .
  3. متد Collections.addAll() .

استفاده از روش ساده لوحانه یا brute force

در این روش از یک آرایه خالی لیستی ایجاد می شود و هر عنصر آرایه یکی یکی به آن اضافه می شود. این روش پس از انجام موارد زیر کار می کند:
  • آرایه را دریافت کنید.
  • یک لیست خالی ایجاد کنید.
  • از طریق عناصر آرایه حلقه بزنید.
  • حالا هر عنصر را به آرایه اضافه کنید.
  • لیست کامل را برگردانید.
این مثال آرایه ای از میوه ها را به لیستی از میوه ها تبدیل می کند:
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 ، یک آرایه به سازنده List به عنوان پارامتری برای سازنده ارسال می شود. برای تبدیل یک آرایه به لیست در اینجا باید مراحل زیر را دنبال کنید:
  • آرایه را دریافت کنید.
  • با ارسال آرایه به عنوان پارامتر در سازنده لیست، یک لیست ایجاد کنید.
  • لیست کامل را برگردانید.
در اینجا مثالی از استفاده از متد 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().

از آنجایی که لیست ها بخشی از بسته مجموعه در جاوا هستند، می توانید با استفاده از متد Collections.addAll() یک آرایه را به لیست تبدیل کنید . این روش با استفاده از مراحل زیر یک آرایه را به لیست تبدیل می کند:
  • یک آرایه می گیریم.
  • یک لیست خالی ایجاد کنید.
  • بیایید با استفاده از متد collects.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);

    }

}
نتیجه:
آرایه: [نخود فرنگی، گوجه فرنگی، هندوانه] فهرست: [نخود فرنگی، گوجه فرنگی، هندوانه]

تزریق وابستگی در جاوا

منبع: Medium در این پست خواهید آموخت که تزریق وابستگی در جاوا چیست و کجا استفاده می شود و چه مزایایی برای توسعه دهنده دارد. کافه استراحت شماره 144.  نحوه تبدیل یک آرایه به فهرست (ArrayList) در جاوا.  تزریق وابستگی در جاوا - 2تزریق وابستگی (DI) فرآیند ایجاد وابستگی خارجی به یک جزء نرم افزاری است. هدف تزریق وابستگی جداسازی مشکلات ایجاد اشیا از استفاده از آنهاست. اصل embedding فرض می کند که یک شی یا تابعی که می خواهد از یک سرویس معین استفاده کند، نیازی به دانستن نحوه ایجاد آن ندارد. در عوض، «مشتری» دریافت‌کننده (شیء یا تابع) وابستگی‌های خود را از کد خارجی (یک «انژکتور») دریافت می‌کند که از آن بی‌اطلاع است. در اینجا یک مثال خوب است. وقتی یک کلاس X از برخی عملکردهای کلاس Y استفاده می کند، می گوییم که کلاس X به کلاس Y وابستگی دارد. تزریق وابستگی به شما امکان می دهد اشیاء وابسته خارج از کلاس ایجاد کنید و آن اشیاء را به روش های مختلف در معرض کلاس قرار می دهد. در این حالت، ایجاد و اتصال اشیاء وابسته به خارج از کلاسی که به آنها بستگی دارد منتقل می شود. الگوی تزریق وابستگی شامل سه نوع کلاس است:
  1. کلاس سرویس که خدماتی را به کلاس مشتری ارائه می دهد.
  2. Client Class - کلاسی که به کلاس سرویس بستگی دارد.
  3. Injector Class کلاسی است که شی کلاس سرویس را به کلاس کلاینت تزریق می کند.

انواع تزریق وابستگی

سه نوع تزریق وابستگی وجود دارد:
  1. Injection سازنده - هنگامی که تزریق سازنده اتفاق می افتد، تزریق کننده یک سرویس (وابستگی) را از طریق سازنده کلاس مشتری ارائه می دهد.
  2. Setter Injection - در این نوع تزریق (همچنین به عنوان تزریق ویژگی نیز شناخته می شود)، انژکتور یک وابستگی را از طریق یک ویژگی عمومی از کلاس مشتری آشکار می کند.
  3. روش تزریق - در این نوع تزریق، کلاس کلاینت رابطی را پیاده سازی می کند که متد(های) را برای ارائه وابستگی اعلام می کند. انژکتور از این رابط برای ارائه وابستگی به کلاس کلاینت استفاده می کند.

مزایای تزریق وابستگی

اجرای تزریق وابستگی مزایای زیر را به ما می دهد:
  • استفاده مجدد از کد
  • سهولت بازسازی مجدد
  • سهولت تست.
نظرات
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION