46 lines
1.2 KiB
Plaintext
46 lines
1.2 KiB
Plaintext
|
/*
|
||
|
* C# Program to Implement Principles of Delegates
|
||
|
*/
|
||
|
|
||
|
using System;
|
||
|
class Program
|
||
|
{
|
||
|
delegate string UppercaseDelegate(string input);
|
||
|
static string UppercaseFirst(string input)
|
||
|
{
|
||
|
char[] buffer = input.ToCharArray();
|
||
|
buffer[0] = char.ToUpper(buffer[0]);
|
||
|
return new string(buffer);
|
||
|
}
|
||
|
static string UppercaseLast(string input)
|
||
|
{
|
||
|
char[] buffer = input.ToCharArray();
|
||
|
buffer[buffer.Length - 1] = char.ToUpper(buffer[buffer.Length - 1]);
|
||
|
return new string(buffer);
|
||
|
}
|
||
|
static string UppercaseAll(string input)
|
||
|
{
|
||
|
return input.ToUpper();
|
||
|
}
|
||
|
static void WriteOutput(string input, UppercaseDelegate del)
|
||
|
{
|
||
|
Console.WriteLine("Input String: {0}", input);
|
||
|
Console.WriteLine("Output String: {0}", del(input));
|
||
|
}
|
||
|
static void Main()
|
||
|
{
|
||
|
WriteOutput("tom ", new UppercaseDelegate(UppercaseFirst));
|
||
|
WriteOutput("tom", new UppercaseDelegate(UppercaseLast));
|
||
|
WriteOutput("tom", new UppercaseDelegate(UppercaseAll));
|
||
|
Console.ReadLine();
|
||
|
}
|
||
|
}
|
||
|
/*
|
||
|
|
||
|
|
||
|
Input String: tom
|
||
|
Output String: Tom
|
||
|
Input String: tom
|
||
|
Output String: toM
|
||
|
Input String: tom
|
||
|
Output String: TOM
|