Arkadaşlar Java'da yazdığım basit 2 satırlık kodu C#'da yapamıyorum. Daha doğrusu lambda ifadelerini C#'da nasıl kullanacağımı bilmiyorum. Videoda size bir soru sordum. İzleyip cevaplayabilirseniz sevinirim.
@Börtü Böcek Biraz işim var kusura bakmayın. Akşam kodları düzenleyip atacağım .
Bildirim düşmesi için tekrardan yazıyorum.
Sadece "public Func<string, string> fill = x => x" fonksiyonunu ekledim peki ne işe yarıyor bu fonksiyon?
Aslında normal bir fonksiyondan farksız fakat " Func<gelen değer, döndürelecek değer> fill = x => x" komudun mantığı bu şekilde işliyor "x=>x" bu da C#'taki lambda için kullanılan Syntax biçimi .
C#:
class Program
{
static void Main(string[] args)
{
Testing Testing = new Testing("Merhaba","Selam");
Testing.WriteStrings();
Testing.Apply("sa","as");
Testing.WriteStrings();
Console.WriteLine("Hello World!");
Console.ReadLine();
}
}
public class Testing
{
public string Str1 { get; set; }
public string Str2 { get; set; }
Test2 _test2 = new Test2();
Test1 _test1 = new Test1();
public Testing(string str1=null, string str2=null)
{
Str1 = str1;
Str2 = str2;
}
public void Apply(string test,string test2)
{
Str1 = _test1.Add(test);
Str2 = _test2.Add(test);
}
public void WriteStrings()
{
Console.WriteLine(Str1 + " " + Str2);
}
}
public class Test2
{
public Func<string, string> fill = x => x;
public string Add(string test)
{
return fill(test);
}
}
public class Test1
{
public Func<string, string> fill = x => x;
public string Add(string test)
{
return fill(test);
}
}
@Börtü Böcük En yakın zamanda cevabınızı bekliyor olacağım.
@Börtü Böcek Biraz işim var kusura bakmayın. Akşam kodları düzenleyip atacağım .
Bildirim düşmesi için tekrardan yazıyorum.
Sadece "public Func<string, string> fill = x => x" fonksiyonunu ekledim peki ne işe yarıyor bu fonksiyon?
Aslında normal bir fonksiyondan farksız fakat " Func<gelen değer, döndürelecek değer> fill = x => x" komudun mantığı bu şekilde işliyor "x=>x" bu da C#'taki lambda için kullanılan Syntax biçimi .
C#:
class Program
{
static void Main(string[] args)
{
Testing Testing = new Testing("Merhaba","Selam");
Testing.WriteStrings();
Testing.Apply("sa","as");
Testing.WriteStrings();
Console.WriteLine("Hello World!");
Console.ReadLine();
}
}
public class Testing
{
public string Str1 { get; set; }
public string Str2 { get; set; }
Test2 _test2 = new Test2();
Test1 _test1 = new Test1();
public Testing(string str1=null, string str2=null)
{
Str1 = str1;
Str2 = str2;
}
public void Apply(string test,string test2)
{
Str1 = _test1.Add(test);
Str2 = _test2.Add(test);
}
public void WriteStrings()
{
Console.WriteLine(Str1 + " " + Str2);
}
}
public class Test2
{
public Func<string, string> fill = x => x;
public string Add(string test)
{
return fill(test);
}
}
public class Test1
{
public Func<string, string> fill = x => x;
public string Add(string test)
{
return fill(test);
}
}
@Börtü Böcük En yakın zamanda cevabınızı bekliyor olacağım.
Aslında bildirim gelmedi. Ben kendim konuyu kontrol edince gördüm. Çok teşekkür ederim yardımınız için.
C#:
public Func<string, string> fill = x => { return x; };
Böyle yazınca da oluyormuş.
Bu Func dediğimiz şey bir interface değil mi? Üzerine gelince delegate yazıyor. Delegate temsilci demek ama Java da böyle bir şey yok. Benim acilen bir C# eğitimi almam şart.