Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
124 changes: 124 additions & 0 deletions arrays-class.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,124 @@
# Arrays Sınıfı ve Metotları

- Java.util paketindeki Arrays sınıfı, Java Collection Framework'ün bir parçasıdır. Bu sınıf, Java dizilerini dinamik olarak oluşturmak ve bunlara erişmek için statik metotlar sağlar. Yalnızca statik metotlar ve Object sınıfının metotlarından oluşur. Bu sınıfın metotları, sınıf adının kendisi tarafından kullanılabilir.
```java
import java.util.Arrays;
```
- Import deyimi ile java.util.Arrays sınıfını projeye dahil etmemiz gerekmektedir.

## Arrays.toString()
- Diziye ait elemanları direk ekrana basmak için kullanılan bir metottur.

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
int[] dizi = {3, 5, 79, 12, 25, -3, 66, 82, -49, 152};
System.out.println(Arrays.toString(dizi));
}
}

// Çıktısı
// [3, 5, 79, 12, 25, -3, 66, 82,-49,152]
```
## Arrays.fill()
- Arrays.fill metodu ile dizilerimizin belirli bir bölümlerine değerler atayabiliriz.

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
// Örnek 1: tüm diziyi 2 ile doldur
int[] liste = {15, 1, 99, 7, 7, -22, 11, 2, -49, 52};
Arrays.fill(liste, 2);
System.out.println("Tüm dizi 2 ile doldu: " + Arrays.toString(liste));

// Örnek 2: sadece indeks 3 ve 4 arasını 100 ile doldur
int[] liste2 = {15, 1, 99, 7, 7, -22, 11, 2, -49, 52};
Arrays.fill(liste2, 3, 5, 100); // 3 dahil, 5 hariç
System.out.println("İndeks 3-4 100 ile doldu: " + Arrays.toString(liste2));
}
}
// Çıktısı
//Tüm dizi 2 ile doldu: [2, 2, 2, 2, 2, 2, 2, 2, 2, 2]
//İndeks 3-4 100 ile doldu: [15, 1, 99, 100, 100, -22, 11, 2, -49, 52]
```
## Arrays.sort()
- Arrays.sort() metodu ile dizilerdeki elemanları sıralayabiliriz.

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
int[] liste = {6, 1, 55, 21, 33, -321, -21, 2, -11, 27};
Arrays.sort(liste);
System.out.println(Arrays.toString(liste));
}
}
// Çıktısı
// [-321, -21, -11, 1, 2, 6, 21, 27, 33, 55]
```
## Arrays.binarySearch()
- Java'da dizideki bir elemanın indis değerini bulmak için binarySearch kullanılabilir. Ama bu metodu kullanabilmek için, dizinin sıralı olması gerekmektedir.

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
int[] liste = {6, 1, 55, 21, 33, -321, -21, 2, -11, 27};

Arrays.sort(liste);
System.out.println(Arrays.toString(liste));

int index = Arrays.binarySearch(liste, 33);
System.out.println("33'ün indeksi :" + index);
}
}
// [-321, -21, -11, 1, 2, 6, 21, 27, 33, 55]
// 33'ün indeksi :8
```

## Arrays.copyOf() ve Arrays.copyOfRange() metotu
- Mevcut diziden belli bir uzunlukta yeni bir dizi oluşturmak için Arrays.copyOf() metotu kullanılır
- Mevcut diziden belli bir aralıkta yeni bir dizi oluşturmak için ise Array.copyOfRange() metodu kullanılır

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
int[] liste = {6, 1, 55, 21, 33, -321, -21, 2, -11, 27};

int[] copyArray = Arrays.copyOf(liste, 3);
System.out.println(Arrays.toString(copyArray));

int[] copyOfRangeArray = Arrays.copyOfRange(liste, 0,5); // 0 dahil 5 hariç
System.out.println(Arrays.toString(copyOfRangeArray));
}
}
// [6, 1, 55]
// [6, 1, 55, 21, 33]
```

## Arrays.equals() metotu

- Java'da iki dizinin eşitliğini kontrol etmek için Arrays.equals() metotu kullanılır.

```java
import java.util.Arrays;

public class Main {
public static void main(String[] args) {
int[] list1 = {1, 2, 3};
int[] list2 = {1, 2, 3};
int[] list3 = {1, 2, 10};

System.out.println(Arrays.equals(list1, list2)); // true
System.out.println(Arrays.equals(list2, list3)); // false
}
}
```