Dart Programlama Dilinde Metodlar-2

Dart programlama dilinde Metodların kullanımında devam ediyoruz. Önceki metod tanımlama yazımıza aşağıdaki linkten ulaşabilirsiniz.


Dart Programlama Dilinde Metodlar-1

Aşağıdaki ötnekte iki tamsayıyı alan parametre olarak alan ve sonucu bir parametre olarak geri döndüren bir metod tanımı görülmektedir. Aşağıdaki metod tanımında s1 ve s2 parametreleri int tipinde belirtilmiş, parametrelerin tipini mutlaka belirtiyoruz. int, double, String  vb. herhangibir veri tipinde olabilir. 

 
int hesapla(int s1, int s2) {
  int toplam = s1 + s2;
  return (toplam);
}
 
void main() {
  //metod çağrısı
  int sonuc = hesapla(5, 6);
  print(sonuc);
}


Şimdi de İki sayı arasındaki sayıları metod kullanarak toplamaya çalışalım. Metod iki parametre alsın, başlangıç ve bitiş ve geriye toplam değerini tamsayı (int) olarak geri döndersin. Main ana metodu içinde klavyeden bu değerleri alalım. Kalvyeden bilgi alma işlemlerinde dart:io kütüphanesini en başa eklememiz gerektiğini hatırlayalım. 

import 'dart:io'; 

İlk önce toplamBul isminde bir metod tanımladık, parametrelerden s1 başlangıç değerini, s2 ise bitiş değerini alıyor. Örneğin s1'e 100, s2'ye 200 değerini gönderdiğimizde 100 ile 200 arasındaki sayıları toplayacak. for döngüsü s1'den başlayıp s2 sayısına kadar birer birer ileriliyor ve dönerken toplam değişkeninde bu aralıktaki değerleri biriktiriyoruz ve return ile toplam değerini döndürüyoruz.

import 'dart:io';
 
int toplamBul(int s1, int s2) {
  int toplam = 0;
  for (int i = s1; i <= s2; i++) {
    toplam += i;
  }
  return (toplam);
}

//Şimdi main içinde metodumuzu çağıralım
 
void main() {
  print("1. sayıyı giriniz:");
  int sayi1 = int.parse(stdin.readLineSync()!);  //1. sayıyı klavyeden alıyoruz
 
  print("2. sayıyı giriniz:");
  int sayi2 = int.parse(stdin.readLineSync()!);  //2. sayıyı klavyeden alıyoruz
 
  int sonuc = toplamBul(sayi1, sayi2);  //metodu çağırıyoruz
  print("Sonuç:" + sonuc.toString());
}

main ana fonksiyonu içinde metodumuzu aşağıdaki şekilde tanımlıyoruz.

  int sonuc = toplamBul(sayi1, sayi2);

Daha sonra sonuc değişkenin ekrana  yazdırıyoruz.


Metodlara bir Liste de gönderebiliriz, liste'ler özellikle çok fazla parametre göndereceğimiz durumlarda imdadımıza yetişmektedir. Şimdi daha farklı bir örnek üzerinde duralım.  Listeler üzerine eksiğiniz varsa daha önce yayınladığımız Listeler isimli yazımızı aşağıdaki linke tıklayarak inceleyebilirsiniz.

Dart Programlama Dilinde Liste Kullanımı

Şimdi aşağıdaki metod tanımına bakalım, int buyukBul(List<int> dizi) ifadesi ile int tipinde bir sonucun metod tarafından geri döndürüleceğini belirtiyoruz. Buradaki List<int> dizi ifadesi ise parametre olarak tanımlanan tamsayı tipinde bir listeyi gösteriyor. Herhangi bir listenin uzunluğuna length ile ulaşabiliyoruz, burada dizi.length ile parametre olarak gönderilen listenin uzunluğuna ulaşıp, döngü ile ile listemizin tüm elemanları arasında dolaşabiliyoruz.

Aşağıdaki metod önce listenin ilk elemanını en büyük kabul edip, oluşturulan enbuyuk değişkenine depolamaktadır, sonra döngü ile listenin diğer elemanlarını elimizdeki enbuyuk değişkeni ile karşılaştırıyoruz, enbuyuk değişkeninden daha büyük bir değere rastlarsak ye değiştiriyoruz.


int buyukBul(List<int> dizi) {
  int enbuyuk = dizi[0];
 
  for (int i = 0; i < dizi.length; i++) {
    if (dizi[i] > enbuyuk) enbuyuk = dizi[i];
  }
  return (enbuyuk);
}
 
void main() {
  var sayilar = List<int>.filled(5, 0);
  sayilar[0] = 10;
  sayilar[1] = 11;
  sayilar[2] = 25;
  sayilar[3] = 13;
  sayilar[4] = 14;
 
  int sonuc = buyukBul(sayilar);
  print(sonuc);
}


main içinde sayilar isimli 5 elemanları ve ilk değerleri 0(sıfır) olan bir List veri yapısı oluşturduk ve beş elemanına değerleri manuel olarak atadık. int sonuc = buyukBul(sayilar); ile metodu çağırıp sonuc değişkenini ekrana yazdırdık.

 

Yukarıda Visual Studio Code içinde yazdığımız kodu, Terminal - New Terminal menüsü ile açarak aşağıdaki şekilde çalıştırıp sonucu görebilirsiniz.



Mutlu kodlamalar,
Oğuzhan TAŞ
Kasım, 2023.

 
 
  Bookmark and Share