Dizi Metotları
Coddy'nin Java Journey'sinin Temeller bölümünün bir parçası. Ders 61 / 73.
Diziler birçok yöntemle (işlevle) donatılmıştır. Bir yönteme erişmek için şunu yazın:
Arrays.methodName(arrayName, otherParameters)İşte temel yöntemlerin bir listesi:
fill(array, value)- diziyi belirli bir değerle doldurur
toString()- diziyi bir dizeye dönüştürür
sort(array)- diziyi artan düzende sıralar
equals(array1, array2)- eşit olup olmadıklarını belirlemek için iki diziyi karşılaştırır
İşte fill metodunun toString ile nasıl kullanılacağına dair bir örnek:
int[] numbers = new int[5];
Arrays.fill(numbers, 10);
System.out.println(Arrays.toString(numbers));Bu, [10, 10, 10, 10, 10] çıktısını verecektir.
sort metoduna örnek:
int[] numbers = {5, 2, 9, 1, 5, 6};
Arrays.sort(numbers);
System.out.println(Arrays.toString(numbers));Bu, [1, 2, 5, 5, 6, 9] çıktısını verir.
Görev
Kolaymerge adlı ve iki diziyi bağımsız değişken olarak alan bir metot oluştur. Metot, iki diziyi sıralanmış tek bir dizide birleştirir ve bu diziyi döndürür.
Önemli: Son birleştirilmiş dizi artan düzende sıralanmış olmalıdır.
Örneğin şu bağımsız değişkenler: merge(new String[] {"1", "4", "2"}, new String[] {"2", "5", "9"}), ["1", "2", "2", "4", "5", "9"] değerini döndürür (sonucun sıralanmış olduğuna dikkat et).
Ögeleri bir diziden diğerine kopyalamak için System.arraycopy() kullan. Sözdizimi şöyledir:
System.arraycopy(sourceArray, sourceStartPosition, destinationArray, destinationStartPosition, length)System.arraycopy() yalnızca zaten var olan bir diziye kopyalama yapar; hedef diziyi hiçbir zaman büyütmez. Önce arr1.length + arr2.length yuvası olan birleştirilmiş diziyi oluştur, arr1 dizisini 0 konumuna kopyala, ardından arr2 dizisini arr1.length konumundan başlayarak kopyala.
Örneğin:
// 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);Kopyalama işleminden sonra hedef dizi: 1 2 3 4 5
Kendin dene
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static String[] merge(String[] arr1, String[] arr2) {
// Kodu buraya yazın
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));
}
}Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temeller bölümündeki tüm dersler
4Operatörler Bölüm 1
Aritmetik OperatörlerModülo OperatörüArtırma/AzaltmaSonsal Artırma/AzaltmaAritmetik Kısa YollarKarşılaştırma OperatörleriDizge Karşılaştırması7Temel G/Ç
System.out MetotlarıÇıktıyı BiçimlendirmeScanner SınıfıTekrar - 120'ye KadarTekrar - Doğru mu Yanlış mı5Operatörler Bölüm 2
Mantıksal Operatörler Bölüm 1Mantıksal Operatörler Bölüm 2Tekrar - Basit MantıkMantıksal Operatörler Bölüm 3Mantıksal Operatörler Bölüm 411Dizilerin Temelleri
Dizi TanımlamaÖğelere ErişmeDizileri DeğiştirmeDizi MetotlarıTekrar - Çarpım DizisiTekrar - Ters Çevrilmiş DiziKendi başına pratik yap: Online Java derleyicisi