Kotlin de vararg kullanımı

lolsec

Katılımcı Üye
21 Kas 2022
496
363
Forum da kotlin ile alakalı fazla bir konu göremedim ve bu güzel konuyu açma gereği duydum.
vararg kısaca birden fazla parametere almanızı sağlar şahsen benim işimi çok kolaylaştıran bir yapıdır istediğiniz sayıda parametre alır.



Swift:
fun main(args: Array<String>) {
   topla(10,20,30,45,100)
}


fun topla(vararg test:Int)
{
    var toplam:Int=0 /*sayıların toplanacağı değişken*/
for(i in test) /*i den test adlı değişkene kadar dön */
{
    toplam= toplam+i
}
    println("toplam: $toplam")

}

not: Swift ile kotlin benzer yapıdadır kod editöründe kotlini göremeyince swift seçtim yanlış anlaşılma olmasın.
 

Helmsys

Yazılım Ekibi Kıdemli
16 Mar 2022
1,481
1,640
Güzel bir yapı
Bu veri tipine sahip parametreyi fonksiyonda return ettiğinde ekrana ne yazdırılıyor. Merak ettim

(Loop kullanmadan ekrana yazdırmaktan bahsediyorum)
 

lolsec

Katılımcı Üye
21 Kas 2022
496
363
Güzel bir yapı
Bu veri tipine sahip parametreyi fonksiyonda return ettiğinde ekrana ne yazdırılıyor. Merak ettim

(Loop kullanmadan ekrana yazdırmaktan bahsediyorum)
pvfhlme.jpg
 

Helmsys

Yazılım Ekibi Kıdemli
16 Mar 2022
1,481
1,640
Yani return test yazdıktan sonra teker teker o değerleri kendisi döndürüyor değil mi yoksa döngü sonucu oluşan çıktı mı.

Bunu sormamın nedeni pythonda da böyle bir yapı var biliyorsundur veyahut görmüşsündür, bir parametrenin soluna yıldız koyulduğunda birden fazla farklı veri tiplerinde argümanları alıp bunları return ettiğimizde bize bir tuple değeri döndürüyor. Yani 5,10,30,"selam" gibi değerler girildiğinde (5,10,30,"selam") olarak dönüyor. Bundan sordum acaba benzer bir çıktımıdır diye de düşündüm. Değilmiş sanırım.

Neyse güzel ve net bir bilgi

Eline sağlık
 

lolsec

Katılımcı Üye
21 Kas 2022
496
363
Yani return test yazdıktan sonra teker teker o değerleri kendisi döndürüyor değil mi yoksa döngü sonucu oluşan çıktı mı.

Bunu sormamın nedeni pythonda da böyle bir yapı var biliyorsundur veyahut görmüşsündür, bir parametrenin soluna yıldız koyulduğunda birden fazla farklı veri tiplerinde argümanları alıp bunları return ettiğimizde bize bir tuple değeri döndürüyor. Yani 5,10,30,"selam" gibi değerler girildiğinde (5,10,30,"selam") olarak dönüyor. Bundan sordum acaba benzer bir çıktımıdır diye de düşündüm. Değilmiş sanırım.

Neyse güzel ve net bir bilgi

Eline sağlık
Python'u bırakalı baya oluyor ama bakarım.
bu varargs ile her türlü veriyi dize şeklinde alabilirsin, kotlin her ne kadar JVM ile çalışsada kod yazımını baya kolaylaştırıyor denemeni öneririm.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.