Random() Class - Türkçe Anlatım

Selim Yay
1 min readApr 27, 2024

Örneğin Flutter ile basit bir zar atma uygulaması yaptığımızı düşünelim.

Muhtemelen 1 ile 6 arasında rastgele sayılar veren bir algoritma yazmamız gerekecektir.

Şimdi adım adım bunu nasıl elde edebileceğimize bakalım.

Öncelikle geliştireceğimiz bu algoritmayı bir değişken(variable) içinde depolamak doğru bir tercih olacaktır.

var randomNum;

Şimdi Random() class’ının bir örneğini(instance object) yaratarak kullanmaya başlayabiliriz.

var randomNum = Random();

Not : Random Class’ını kullanabilmek için dart:math kütüphanesini import etmek gerekir.

Şimdi ise nextInt() ve nextDouble() gibi metotları kullanarak rastgele sayılar oluşturabiliriz. Biz zar uygulamamız için tam sayılar oluşturmak istediğimizden nextInt() metotunu kullanacağız.

var randomNum = Random().nextInt();

nextInt(n) metotu varsayılan olarak 0 ile n(number) aralığında sayılar yaratır (0 dahil, n ise dahil değildir).

O halde nextInt(7) dersek sorun çözülür, öyle değil mi?

Maalesef değil. Eğer nextInt(7) dersek, bu bize 0 ile 6 arasında sayılar verecektir. Ancak biz zar atma uygulamamızda 0'ın değer olarak verilebilmesini istemiyoruz. En düşük değer 1 olmalı.

Peki bu sorunu nasıl çözebiliriz?

öncelikle nextInt(7) yerine nextInt(6) diyelim.

var randomNum = Random().nextInt(6);

Şimdi zar atma uygulamamız için hedeflediğimiz, ve 1 ile 7 arasında rastgele sayılar oluşturan algoritmamızın son halini paylaşacağım. Açıklamayı ise sonrasında yapacağım.

var randomNum = Random().nextInt(6) + 1;

nextInt(6) bize 0 (dahil) ile 6 (dahil değil) arasında sayılar verirken, nextInt(6) + 1 dediğimizde 1 (dahil) ile 7 (dahil değil) arasında sayılar verecektir.

Zaten bizim istediğimiz de 0 ile 6 arasında rastgele sayılar oluşturan bir algoritma geliştirmekti.

Umarım faydalı olmuştur, şimdilik görüşmek üzere.

--

--

Selim Yay
0 Followers

Frontend Developer | I Love Writing Things