泛型:是为了代码重用,算法重用。
Dictionary<K,V>
list<T>//T表示一个timp类;就好像是一个占位符,对将来应以的类型进行替代;TkeyTvalue char,char string Peron
list<int> list =new List<int>();
list.Add(10);
//list.Add("dfhdjf");不能为字符型的,list定义成了整型int
定义一个泛型
main()
{
MyList m1=new MyList();
Console.WriteLine(m1[4]);
m1[0]=900
Console.WriteLine(m1[0]);
MyList m2=new MyList();
m2[2]="helloword"
Console.WriteLine(m2[2]);
MyListGeneric<int> numbers=new MyListGeneric<int>(10);
numbers[0]=10;
numbers[1]=20;
numbers[2]=999;
Console.WriteLine(numbers[1]);
MyListGeneric<string> strs=new MyListGeneric<string>();
strs[0]="i";
strs[1]="am";
strs[2]="cry";
Console.WriteLine(strs[1]);
Console.ReadKey();
}
**********************
class MyList
{
int[] arrInt=new int[]{10,20,30,40,50,60,70};
public int this[int index]//当前类的索引
{
get{return arrInt[intdex];}
srt{arrInt[index]=value;}
}
**************************
class MyList
{
string[] arrInt=new string[10];
public string this[int index]//当前类的索引
{
get{return arrInt[intdex];}
srt{arrInt[index]=value;}
}
}
-------------------------------
//添加一个通用的类
class MyListGeneric<T>
{
private T[] arr;
public MyListGeneric(int len)
T[] arrInt=new T[len];
public T this[int index]//当前类的索引
{
get{return arrInt[intdex];}
srt{arrInt[index]=value;}
}
}
7.编写函数进行日期转换,将输入的大写的日期转换成阿拉伯数字的形式
二零一二年三月十三日 2012-3-13
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 日期转换
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("请输入大写日期:");
string inputCdate = Console.ReadLine();
Console.WriteLine(DateConvert(inputCdate));
Console.ReadKey();
}
private static string DateConvert(string date)
{
Dictionary<char, char> dict = new Dictionary<char, char>();
string dictionary = "一1 二2 三3 四4 五5 六6 七7 八8 九9 零0";
string[] parts = dictionary.Split(' ');
//parts[0]="一1"
for (int i = 0; i < parts.Length; i++)
{
dict.Add(parts[i][0], parts[i][1]);
}
StringBuilder sb = new StringBuilder();
for (int i = 0; i < date.Length; i++)
{
if (dict.ContainsKey(date[i]))
{
sb.Append(dict[date[i]]);
}
else if (!dict.ContainsKey(date[i]) && date[i] != '十')
{
sb.Append('-');
}
else
{
if(!dict.ContainsKey(date[i-1])&&!dict.ContainsKey(date[i+1]))
{
sb.Append("10");
}
else if (!dict.ContainsKey(date[i - 1]) && dict.ContainsKey(date[i + 1]))
{
sb.Append('1');
}
else if (dict.ContainsKey(date[i - 1]) && dict.ContainsKey(date[i + 1]))
{ }
else if (dict.ContainsKey(date[i - 1]) && !dict.ContainsKey(date[i + 1]))
{
sb.Append('0');
}
}
}
return (sb.ToString().TrimEnd('-'));
}
}
}