C#中的泛型如何接struct
4个回答
2013-07-30
展开全部
通过泛型可以定义类型安全的数据类型,它的最显著应用就是创建集合类,可以约束集合类内的元素类型。
举例说明:
List<Student> studentList=new List<Student>();
Student student=new Student();//实例化 student
Teacher teacher=new Teacher();//实例化 teacher
studentList.add(student);//向泛型集合中添加元素
studentList.add(teacher);===此处将无法编译通过,编译器立即报错
"List<Student>" 此时它表示这个集合只接受 Student类型的元素;泛型概念的引入解决了很多繁琐的操作问题,有了更好的安全性并且提高了性能;没有泛型之前的 拆箱 装箱 操作 非常频繁且 各方面表现都不理想 比如此例:不使用泛型如下--
ArrayList studentList=new ArrayList();
Student student1=new Student("Boy");
Student student2=new Student("Girl");
studentList.add(student1);
studentList.add(student2);
引用的时候需要进行强制类型转换:
foreach(Object stu in studentList)
{
Student stuForeach=(Student)stu;
Console.WriteLine(stuForeach.Name);
}
举例说明:
List<Student> studentList=new List<Student>();
Student student=new Student();//实例化 student
Teacher teacher=new Teacher();//实例化 teacher
studentList.add(student);//向泛型集合中添加元素
studentList.add(teacher);===此处将无法编译通过,编译器立即报错
"List<Student>" 此时它表示这个集合只接受 Student类型的元素;泛型概念的引入解决了很多繁琐的操作问题,有了更好的安全性并且提高了性能;没有泛型之前的 拆箱 装箱 操作 非常频繁且 各方面表现都不理想 比如此例:不使用泛型如下--
ArrayList studentList=new ArrayList();
Student student1=new Student("Boy");
Student student2=new Student("Girl");
studentList.add(student1);
studentList.add(student2);
引用的时候需要进行强制类型转换:
foreach(Object stu in studentList)
{
Student stuForeach=(Student)stu;
Console.WriteLine(stuForeach.Name);
}
2013-07-30
展开全部
你这是?
是不是要用泛型list<>集合存储 结构类型的东西啊?
第一步: 假如这是struct Student
用的时候 Student student;
第二部: List<Student> list=new List<Student>();
list.Add(student);//这里把结构的对象添加到集合中
给个金牌哈~
是不是要用泛型list<>集合存储 结构类型的东西啊?
第一步: 假如这是struct Student
用的时候 Student student;
第二部: List<Student> list=new List<Student>();
list.Add(student);//这里把结构的对象添加到集合中
给个金牌哈~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-30
展开全部
自己定义个新的类型如 MYlist
public class Mylist <T>:list<T>{
}
;
public class Mylist <T>:list<T>{
}
;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-07-30
展开全部
泛型里只能是应用类型,struct是值类型的,
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询