static void Main(string[] args) { //- Lav en Lambda Expression der tager imod en int og returnerer tallet fordoblet. Gem i en passende delegate, og kør. MultiplyDelegate del1 = x => x * 2; Console.WriteLine(del1(50)); // - Lav en Lambda Expression der tager imod 3 floats og returnerer summen. Gem i en passende delegate, og kør. SumOfFloatsDelegate del2 = (x1, x2, x3) => x1 + x2 + x3; Console.WriteLine(del2(12.1F, 1.5F, 2.7F)); //- Lav en Lambda Expression der ikke tager imod noget og returnerer "Hello World". Gem i en passende delegate og kør. TextMakerDelegate del3 = () => "Hello World"; Console.WriteLine(del3()); //Udfordring //addition MyFloatDelegate floatDelAddition = (num1, num2) => num1 + num2; Console.WriteLine(floatDelAddition(2.2f, 40f)); //substraction MyFloatDelegate floatDelSubstration = (num1, num2) => num1 - num2; Console.WriteLine(floatDelSubstration(99.1f, 30.3f)); //division MyIntDelegate intDelDivision = (num1, num2) => num1 / num2; Console.WriteLine(intDelDivision(10, 5)); //Multiply MyStringDelegate stringDelMultiply = (text1, text2) => { if (!int.TryParse(text1, out int int1)) { throw new ArgumentException("Argument must be number.", "text1"); } if (!int.TryParse(text2, out int int2)) { throw new ArgumentException("Arguement must be a number.", "text2"); } return((int1 * int2).ToString()); }; Console.WriteLine(stringDelMultiply("10", "20")); }
static void Main(string[] args) { //- Lav en delegate som returnerer void og tager imod ingen parametre. Kald denne. SomethingDelegate del1 = PrintHello; del1(); //- Lav en anden delegate som returnerer float og tager imod ingen parametre. Kald denne. Something2Delegate del2 = GetHourOfTheDay; Console.WriteLine(del2()); //- Lav en anden delegate som returnerer void og tager imod 3 parametere. Kald denne. AppendAndPrintInputsDelegate del3 = MasterAppender; del3("Rip", "Rap", "Rup"); //Udfordring: var math = new Math(); //int eksempel MyIntDelegate intDel = math.Add; Console.WriteLine(intDel(2, 3)); //float eksempel MyFloatDelegate floatDelegate = math.Divide; Console.WriteLine(floatDelegate(12, 2)); //string eksempel MyStringDelegate stringDelegate = math.Multiply; Console.WriteLine(stringDelegate("10", "10")); }
public void Start() { List <string> MyStringList = new List <string>(); { MyStringList.Add("string1"); MyStringList.Add("string2"); MyStringList.Add("string3"); MyStringList.Add("string4"); }; List <float> MyNumberlist = new List <float>(); { MyNumberlist.Add(11); MyNumberlist.Add(5); MyNumberlist.Add(2); MyNumberlist.Add(55); }; MyStringDelegate concatinator = list => { string output = ""; foreach (string word in list) { output += word + ","; } return(output); }; Console.WriteLine(concatinator(MyStringList)); MyFloatDelegate numberAddition = list => { float output = 0; foreach (float number in list) { output += number; } return(output); }; Console.WriteLine(numberAddition(MyNumberlist)); MyFloatDelegate numberTimes = list => { float output = 1; foreach (float number in list) { output *= number; } return(output); }; Console.WriteLine(numberTimes(MyNumberlist)); }