May
9
2013

C# Params Nedir?

Merhaba Arkadaşlar,

Bu makelemde C# kullanılan params anahtar kelimesinin ne olduğunu , neden kullanıldığını bize ne gibi faydalar sağladığını kısa bir konu anlatımı ile incelemekte olacağız.

Adından’da anlaşılacağı gibi bir metotun çok sayıda parametresi  olduğunda veya parametre sayısı belli olmadığında kullanılan bir yöntemdir.  Bizim için kodun analaşılabilirliği ve temiz kod olması büyük bir önem arz ettiğinden  params kullanmak bizim için kaçınılmaz bir durumdur.

Bir topla metodumuz olsun  ve  bu metot 5 tane parametre alsın. Params kullanmadan aşağıdaki gibi yazarız bu metodu.

 

int topla(int a, int b, int c, int d, int e)
{
}

Bu metodu params yazarak yaparsak aşağıdaki kodu yazmamız gerekecek.

 

int topla(params int[] values)
 {
 }

Parametre sayısı artığını düşündüğümüz zaman params anahtar kelimesinin faydalarını daha iyi anlayacağız.  C# Params anahtar kelimesinin bize sağladığı bir faydada parametre sayısının öneminin olmaması. Nasıl yani ? Bir metot 5 parametre alıyor , yine aynı metot 4 parametre alıyor gibi durumlarda metotları overload etmekten bizi kurtarmasıdır.

 

Kullanım şekli:
(params  veri-tipi[] degisken)  burdaki veri-tipi int,string, object gibi tipleri belirte biliriz.

 

Params kullanarak bir örnek yapalım.  Burda değişik sayıda parametre kullanarak toplama işlem yapalım.

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Params
{
    class Program
    {  
        //www.temizkod.com  
        //C# Params Kullanımı
        static void Main(string[] args)
        {
            int toplam1 = topla(1);
            int toplam2 = topla(3, 4,-3);
            int toplam3 = topla(2,4,5,6,7,8,9,12,34,54,76,12,56,12,1);

            Console.WriteLine(toplam1);
            Console.WriteLine(toplam2);
            Console.WriteLine(toplam3);

        }
        // Params parametreleri bir dizi şeklinde tutuyor
        static int topla(params int[] values)
        {

            int total = 0;
            //foreach dizideki elemanları gezerek değerlerini topluyor.
            foreach (int value in values)
            {
                total += value;
            }
            return total;
        }
    }
}

 

C# Params Kullanımı

 

Umarım faydalı bir makale olmuştur.

 

Yazar Hakkında

Harun Balta 63 adet yazısı bulunuyor..

Bilgisayar Mühendisliği Üzerine çalıştığım konular: C# , .Net , Silverlight , WPF , Entity Framework ,MVVM, Oracle ,Pl/Sql

Print Friendly