Scala - Değişkenler

Değişkenler, değerleri saklamak için ayrılmış bellek konumlarından başka bir şey değildir. Bu, bir değişken oluşturduğunuzda bellekte biraz yer ayırdığınız anlamına gelir.

Bir değişkenin veri türüne bağlı olarak, derleyici belleği ayırır ve ayrılmış bellekte nelerin saklanabileceğine karar verir. Bu nedenle, değişkenlere farklı veri türleri atayarak, bu değişkenlerde tamsayıları, ondalık sayıları veya karakterleri saklayabilirsiniz.

Değişken Beyanı

Scala, değişkenleri bildirmek için farklı bir sözdizimine sahiptir. Değer olarak, yani sabit veya değişken olarak tanımlanabilirler. Burada myVar, var anahtar sözcüğü kullanılarak bildirilir. Değeri değiştirebilen bir değişkendir ve bunamutable variable. Aşağıdakileri kullanarak bir değişken tanımlamak için sözdizimivar anahtar kelime -

Sözdizimi

var myVar : String = "Foo"

Burada myVal, val anahtar sözcüğü kullanılarak bildirilir. Bu, değiştirilemeyen bir değişken olduğu anlamına gelir ve buna denirimmutable variable. Val anahtar kelimesini kullanarak bir değişkeni tanımlamak için sözdizimi aşağıdadır -

Sözdizimi

val myVal : String = "Foo"

Değişken Veri Türleri

Bir değişkenin türü, değişken adından sonra ve eşittir işaretinden önce belirtilir. Herhangi bir Scala değişkenini, veri tipini aşağıdaki gibi belirterek tanımlayabilirsiniz -

Sözdizimi

val or val VariableName : DataType = [Initial Value]

Bir değişkene herhangi bir başlangıç ​​değeri atamazsanız, aşağıdaki gibi geçerlidir -

Sözdizimi

var myVar :Int;
val myVal :String;

Değişken Tip Çıkarımı

Bir değişkene bir başlangıç ​​değeri atadığınızda, Scala derleyicisi değişkenin türünü kendisine atanan değere göre bulabilir. Buna değişken tür çıkarımı denir. Bu nedenle, bu değişken bildirimlerini şöyle yazabilirsiniz -

Sözdizimi

var myVar = 10;
val myVal = "Hello, Scala!";

Burada, varsayılan olarak, myVar Int tipi olacak ve myVal, String tipi değişkeni olacaktır.

Birden çok ödev

Scala birden çok atamayı destekler. Bir kod bloğu veya yöntem bir Tuple (Tuple- Farklı türdeki Nesnelerin koleksiyonunu tutar), Tuple bir val değişkenine atanabilir. [Note - Sonraki bölümlerde Tuples üzerinde çalışacağız.]

Sözdizimi

val (myVar1: Int, myVar2: String) = Pair(40, "Foo")

Ve tür çıkarımı doğru anlıyor -

Sözdizimi

val (myVar1, myVar2) = Pair(40, "Foo")

Örnek Program

Aşağıda, Scala'da değişken bildirimi sürecini açıklayan örnek bir program yer almaktadır. Bu program dört değişken bildirir - iki değişken tür bildirimi ile tanımlanır ve kalan ikisi tür bildirimi içermez.

Misal

object Demo {
   def main(args: Array[String]) {
      var myVar :Int = 10;
      val myVal :String = "Hello Scala with datatype declaration.";
      var myVar1 = 20;
      val myVal1 = "Hello Scala new without datatype declaration.";
      
      println(myVar); println(myVal); println(myVar1); 
      println(myVal1);
   }
}

Yukarıdaki programı şuraya kaydedin: Demo.scala. Bu programı derlemek ve çalıştırmak için aşağıdaki komutlar kullanılır.

Komut

\>scalac Demo.scala
\>scala Demo

Çıktı

10
Hello Scala with datatype declaration.
20
Hello Scala without datatype declaration.

Değişken Kapsam

Scala'daki değişkenler, kullanıldıkları yere bağlı olarak üç farklı kapsama sahip olabilir. Alanlar, yöntem parametreleri ve yerel değişkenler olarak var olabilirler. Her kapsam türü ile ilgili ayrıntılar aşağıdadır.

Alanlar

Alanlar, bir nesneye ait değişkenlerdir. Alanlara, nesnedeki her yöntemin içinden erişilebilir. Alanlar, alanın hangi erişim değiştiricilerle bildirildiğine bağlı olarak nesnenin dışında da erişilebilir olabilir. Nesne alanları hem değiştirilebilir hem de değiştirilemez türler olabilir ve her ikisinden biri kullanılarakvar veya val.

Yöntem Parametreleri

Yöntem parametreleri, yöntem çağrıldığında bir yöntem içindeki değeri iletmek için kullanılan değişkenlerdir. Yöntem parametrelerine yalnızca yöntemin içinden erişilebilir, ancak nesneye yöntemin dışından bir başvurunuz varsa, içeri aktarılan nesnelere dışarıdan erişilebilir. Yöntem parametreleri her zaman değişmezdir,val anahtar kelime.

Yerel Değişkenler

Yerel değişkenler, bir yöntem içinde bildirilen değişkenlerdir. Yerel değişkenlere yalnızca yöntemin içinden erişilebilir, ancak oluşturduğunuz nesneler, onları yöntemden döndürürseniz yöntemden kaçabilir. Yerel değişkenler hem değiştirilebilir hem de değiştirilemez tipte olabilir ve her ikisinden biri kullanılarak tanımlanabilirvar veya val.