protected void Button1_Click(object sender, EventArgs e)
{ List<Users> listUser = new List<Users>();
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
}
}
public class Users
{
//构造函数
private int _Age;
private string _Name;
public int Age
{
set{_Age=value;}
get { return _Age; }
}
public string Name
{
set { _Name = value; }
get { return _Name; }
}}大家来看看这段代码为什么要这样写?加上泛型有什么作用?
{ List<Users> listUser = new List<Users>();
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
}
}
public class Users
{
//构造函数
private int _Age;
private string _Name;
public int Age
{
set{_Age=value;}
get { return _Age; }
}
public string Name
{
set { _Name = value; }
get { return _Name; }
}}大家来看看这段代码为什么要这样写?加上泛型有什么作用?
解决方案 »
- 帮我看一下下面的代码,谢谢!
- 关于组播(multicast)
- 帮帮忙。我有一个dll(别人已经做好的,vb做的),我怎么知道他引用了其他的那些dll?
- .net(C#) 如何将服务器上注册表文件导入到客户机注册表内
- 取消已经存在的排序列?
- 如何让DataTable_ColumnChanged只触发一次
- C#跟VB.NET有多大区别,我对VB.NET较熟悉,C#跟VB.NET在功能实现上完全一样吗?
- C#中串口通信问题的书
- c#里如何打开那个数据库连接配置对话框?又怎么把连接字符串读出来?
- c# 使用Windows media player定制播放器
- 为什么我的vs2008 没有 System.Data.Linq.SqlClient.Sql2008Provider
- 你最喜欢的程序语言是什么,你最经常使用的程序语言是什么
那么我想加什么进去都行我可以
listUser.Add("ABCDE");
然后再
listUser.Add( new Integer(12345) );从列表中取数据出来的时候,要强制转换String a = (String) listUser[0];
Integer b = (Integer) listUser[1];
在没有泛型以前,整天要强制转换,真是很痛苦的啊……
listUser.Add(Users类型) 添加的是Users类型 取出来也是Users类型
而且泛型中还提供了大量的辅助方法....方便操作
Users[] user = new Users[10]; 是个静态数组ArrayList list = new ArrayList(); 虽然是个动态数组,但是Add(Object) 要进行装箱操作,取值的时候还要拆箱.........这个是泛型最简单的用法了..........楼主 用多了自然就明白了........而且是越用越上瘾啊 呵呵
protected void Button1_Click(object sender, EventArgs e)
{ List<Users> listUser = new List<Users>();
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
}//楼主 代码是没写完整吧 List<Users> listUser = new List<Users>();
写在里面有什么用List<Users> listUser = new List<Users>();
protected void Button1_Click(object sender, EventArgs e)
{
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
}
}
推荐 张子阳的博文
List<>里面的方法
{
public Point(float X, float Y)
{
x = X;
y = Y;
}
private float x;
private float y; public void Print()
{
Console.WriteLine("{0},{1}", x, y);
}
}
class Program
{
static void Main(string[] args)
{
ArrayList al = new ArrayList(); Point []p = new Point[3]
{new Point(1.0f, 2.0f), new Point(3.0f, 4.0f), new Point(5.0f, 6.0f)};
al.Add(p[0]); /////////////////////////
//A lot of codes
/////////////////////// al.Add(1);//此处误操作 /////////////////////////
//A lot of codes
/////////////////////// al.Add(p[2]);
}
{ List<Users> listUser = new List<Users>();
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
}
}跟 Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;有何区别?
泛型实现代码重用。 如果一段代码接受int类型的参数,当你用了一段时间,老板让你改,让他接受string类型的参数。那么你的解决办法可能是复制粘贴,修改一下int的部分。 但是如果后来还需要增加其他的话,这样的处理方式肯定是不行的。
但是当我们定义一个方法: public class User<T>{}
这个T可以由任何类型来替代。 可以是 User<int>, User<string>。
List<Users> listUser = new List<Users>();
Users listInsert=new Users();
listInsert.Name="张三";
listInsert.Age=1;
listUser.Add(listInsert);
实际从数据库去除数据加载LIST的时候不也是要去做数据转换吗?
new一个user类?能说具体点吗?
我这么比方,前面那个list是个大袋子,把你的user实例装进去了,以后有新的user1,user2,也可以装到list里面。有点像数组,懂不?不过原理是不一样的
后面那个仅仅new了个user而已。就像单个的int
Users listInsert=new Users();
Users listInsert1=new Users();
Users listInsert2=new Users();
Users listInsert3=new Users();
这样?这样具体作用,Users 只是一个实体类,实例这么多出来有何作用?