Menu
Coddy logo textTech
flag Ar iconالعربيةdown icon

دوال المصفوفات

جزء من قسم Fundamentals في رحلة Java على Coddy. الدرس 61 من 73.

المصفوفات مزودة بالعديد من الدوال (الأساليب). للوصول إلى دالة، اكتب:

Arrays.methodName(arrayName, otherParameters)

إليك قائمة بالأساليب الأساسية:

  • fill(array, value) - يملأ المصفوفة بقيمة محددة
  • toString() - يحول المصفوفة إلى سلسلة نصية
  • sort(array) - يفرز المصفوفة بترتيب تصاعدي
  • equals(array1, array2) - يقارن بين مصفوفتين لتحديد ما إذا كانتا متساويتين

إليك مثال على كيفية استخدام التابع fill مع toString:

int[] numbers = new int[5];
Arrays.fill(numbers, 10);
System.out.println(Arrays.toString(numbers));

سيؤدي هذا إلى إخراج [10, 10, 10, 10, 10].

مثال على دالة sort:

int[] numbers = {5, 2, 9, 1, 5, 6};
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));

سيؤدي هذا إلى إخراج [1, 2, 5, 5, 6, 9].

challenge icon

التحدي

سهل

قم بإنشاء طريقة (method) تسمى merge تستقبل مصفوفتين كوسطاء. تقوم هذه الطريقة بدمج المصفوفتين في مصفوفة واحدة مرتبة وإرجاعها.

هام: يجب أن تكون المصفوفة النهائية المدمجة مرتبة ترتيباً تصاعدياً.

على سبيل المثال، الوسطاء التالية: merge(new String[] {"1", "4", "2"}, new String[] {"2", "5", "9"}) ستعيد ["1", "2", "2", "4", "5", "9"] (لاحظ أن النتيجة مرتبة)

استخدم System.arraycopy() لنسخ العناصر من مصفوفة إلى أخرى. الصيغة هي: 

System.arraycopy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)

على سبيل المثال:

// Source array
String[] sourceArray = {"1", "2", "3", "4", "5"};
        
// Destination array
String[] destinationArray = new String[5];
        
// Copy elements from sourceArray to destinationArray
System.arraycopy(sourceArray, 0, destinationArray, 0, 5);

المصفوفة الوجهة بعد النسخ: 1 2 3 4 5

جرّب بنفسك

import java.util.Arrays;
import java.util.Scanner;


public class Main {
    public static String[] merge(String[] arr1, String[] arr2) {
        // اكتب الكود هنا
        return null;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String textArr1 = scanner.nextLine();
        String textArr2 = scanner.nextLine();
        String[] arr1 = textArr1.split(",");
        String[] arr2 = textArr2.split(",");

        String[] mergedArray = merge(arr1, arr2);
        System.out.println(Arrays.toString(mergedArray));
    }
}
quiz iconاختبر نفسك

يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.

جميع دروس Fundamentals

تدرّب بنفسك: مترجم Java عبر الإنترنت