怎么用ajax获取后台一个ajax返回list集合合,ajax返回list集合合中存放的是父类id下的内容的子类的内容,并在页面显示出来

他的最新文章
他的热门文章
您举报文章:
举报原因:
原文地址:
原因补充:
(最多只允许输入30个字)public class Person {
&& &private S
&& &public Person() {
&& &&& &super();
&& &public Person(long id,& String name,int age) {
&& &&& &super();
&& &&& &this.id =
&& &&& &this.name =
&& &&& &this.age =
setter、getter方法&&
public class Student extends Person {
&& &private String schoolN
&& &private String xueH
&& &public Student() {
&& &&& &super();
&& &public Student(long id, String name, int age, String schoolName, String xueHao) {
&& &&& &super(id, name, age);
&& &&& &this.schoolName = schoolN
&& &&& &this.xueHao = xueH
setter、getter方法
import java.util.ArrayL
import java.util.L
public class Test {
&& &public static void main(String[] args) {
&& &&& &/**
&& &&& & * Person 类有3个属性
&& &&& & * Student 类继承了Person类,并添加了2个属性
&& &&& & * 把Person类的list集合中的元素放在Student类的list集合中
&& &&& & */
&& &&&& List&Person& ps = new ArrayList&&();
&& &&& &Person ps1 = new Person(1, &a&, 11);&& &ps.add(ps1);& 把实例化添加到父类集合中
&& &&& &Person ps2 = new Person(2, &b&, 12);&& &ps.add(ps2);
&& &&& &Person ps3 = new Person(3, &c&, 13);&& &ps.add(ps3);
&& &&& &Person ps4 = new Person(4, &d&, 14);&& &ps.add(ps4);
创建子类集合
&& &&&& List&Student& st = new ArrayList&&();
实例化子类对象
&& &&& &for(int j =0;j&ps.size();j++) {
&&&&&&&&&& Student stu = new Student();&& &&& &&&
获取父类的属性值
&&&&&&&&&&& stu.setId(ps.get(j).getId());
&& &&& &&& &stu.setName(ps.get(j).getName());
&& &&& &&& &stu.setAge(ps.get(j).getAge());
设置子类的属性值
&& &&& &&&& stu.setSchoolName(null);
&& &&& &&& &stu.setXueHao(null);
&& &&& &&&& st.add(stu);
&& &&& &for(int i=0;i&st.size();i++) {
&& &&& &&& &System.out.println(&姓名:&+st.get(i).getName()+&, 学校:&+st.get(i).getSchoolName());
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:3083次
排名:千里之外
(window.slotbydup = window.slotbydup || []).push({
id: '4740890',
container: s,
size: '250,250',
display: 'inlay-fix'JAVA list中如何将类型为子类的list引用赋值给类型为父类的list引用?_百度知道
JAVA list中如何将类型为子类的list引用赋值给类型为父类的list引用?
Animal是Dog父类,我想把dog赋值给animal,请问有办法吗?
我的想法是list dog的引用赋值给list animal的引用,语法上应该怎么写?
我有更好的答案
这里的泛型应该写作List&;Dog&不是一个类型,也不是继承关系? extends Animal& list = new ArrayList&ltList&Animal&和List&lt
那还有一个继承自animal的cat,我Cat cat = new cat();想上面写了后list.add(cat)?可以吗?为什么呢?谢谢!!!
采纳率:75%
可以强制转换,但是会出问题,编译的时候没问题,但是使用的时候,会出问题
强制转换就行了(List&Animal&)dog
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。C# 某方法需要一个List&父类&参数,怎么把List&子类&传进去呢_百度知道
C# 某方法需要一个List&父类&参数,怎么把List&子类&传进去呢
1、List的基础、常用方法:声明: 1、List&T& mList = new List&T&(); T为列表中元素类型,现在以string类型作为例子E.g.:List&string& mList = new List&string&();2、List&T& testList =new List&T& (IEnumerable&T& collection);以一个集合作为参数创建ListE.g.:string[] temArr = { &Ha&, &Hunter&, &Tom&, &Lily&, &Jay&, &Jim&, &Kuku&, &Locu& };List&string& testList = new List&string&(temArr);添加元素:1、 List. Add(T item) 添加一个元素E.g.:mList.Add(&John&);2、 List. AddRange(IEnumerable&T& collection) 添加一组元素E.g.:string[] temArr = { &Ha&,&Hunter&, &Tom&, &Lily&, &Jay&, &Jim&, &Kuku&, &Locu& };mList.AddRange(temArr);3、Insert(int index, T item); 在index位置添加一个元素E.g.:mList.Insert(1, &Hei&);遍历List中元素:foreach (T element in mList) T的类型与mList声明时一样{Console.WriteLine(element);}E.g.:foreach (string s in mList){Console.WriteLine(s);}删除元素:1、 List. Remove(T item)删除一个值E.g.:mList.Remove(&Hunter&);2、 List. RemoveAt(int index); 删除下标为index的元素E.g.:mList.RemoveAt(0);3、 List. RemoveRange(int index, int count);从下标index开始,删除count个元素E.g.:mList.RemoveRange(3, 2);判断某个元素是否在该List中:List. Contains(T item) 返回true或false,很实用E.g.:if (mList.Contains(&Hunter&)){Console.WriteLine(&There is Hunter in the list&);}else{mList.Add(&Hunter&);Console.WriteLine(&Add Hunter successfully.&);}给List里面元素排序:List. Sort () 默认是元素第一个字母按升序E.g.:mList.Sort();给List里面元素顺序反转:List. Reverse () 可以与List. Sort ()配合使用,达到想要的效果E.g.:mList.Sort();List清空:List. Clear () E.g.: mList.Clear();获得List中元素数目:List. Count () 返回int值E.g.:int count = mList.Count();Console.WriteLine(&The num of elements in the list: & +count);2、List的进阶、强大方法:举例用的List:string[] temArr = { Ha&,&Hunter&, &Tom&, &Lily&, &Jay&, &Jim&, &Kuku&, & &Locu& };mList.AddRange(temArr);List.Find 方法:搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List 中的第一个匹配元素。 public T Find(Predicate&T& match);Predicate是对方法的委托,如果传递给它的对象与委托中定义的条件匹配,则该方法返回 true。当前 List 的元素被逐个传递给Predicate委托,并在 List 中向前移动,从第一个元素开始,到最后一个元素结束。当找到匹配项时处理即停止。Predicate 可以委托给一个函数或者一个拉姆达表达式:委托给拉姆达表达式:E.g.:string listFind = mList.Find(name =& //name是变量,代表的是mList{ //中元素,自己设定if (name.Length & 3){}});Console.WriteLine(listFind); //输出是Hunter委托给一个函数:E.g.:string listFind1 = mList.Find(ListFind); //委托给ListFind函数Console.WriteLine(listFind); //输出是HunterListFind函数: public bool ListFind(string name){if (name.Length & 3){}}这两种方法的结果是一样的。List.FindLast 方法:搜索与指定谓词所定义的条件相匹配的元素,并返回整个 List 中的最后一个匹配元素。 public T FindLast(Predicate&T& match);用法与List.Find相同。List.TrueForAll方法: 确定是否 List 中的每个元素都与指定的谓词所定义的条件相匹配。public bool TrueForAll(Predicate&T& match);委托给拉姆达表达式:E.g.:bool flag = mList.TrueForAll(name =&{if (name.Length & 3){}else{}});Console.WriteLine(&True for all: &+flag); //flag值为false委托给一个函数,这里用到上面的ListFind函数:E.g.:bool flag = mList.TrueForAll(ListFind); //委托给ListFind函数Console.WriteLine(&True for all: &+flag); //flag值为false这两种方法的结果是一样的。List.FindAll方法:检索与指定谓词所定义的条件相匹配的所有元素。public List&T& FindAll(Predicate&T& match);E.g.:List&string& subList = mList.FindAll(ListFind); //委托给ListFind函数foreach (string s in subList){Console.WriteLine(&element in subList: &+s);}这时subList存储的就是所有长度大于3的元素List.Take(n): 获得前n行 返回值为IEnumetable&T&,T的类型与List&T&的类型一样E.g.:IEnumerable&string& takeList= mList.Take(5);foreach (string s in takeList){Console.WriteLine(&element in takeList: & + s);}这时takeList存放的元素就是mList中的前5个List.Where方法:检索与指定谓词所定义的条件相匹配的所有元素。跟List.FindAll方法类似。E.g.:IEnumerable&string& whereList = mList.Where(name =&{if (name.Length & 3){}else{}});foreach (string s in subList){Console.WriteLine(&element in subList: &+s);}这时subList存储的就是所有长度大于3的元素List.RemoveAll方法:移除与指定的谓词所定义的条件相匹配的所有元素。public int RemoveAll(Predicate&T& match);E.g.:mList.RemoveAll(name =&{if (name.Length & 3){}else{}});foreach (string s in mList){Console.WriteLine(&element in mList: & + s);}这时mList存储的就是移除长度大于3之后的元素。List&T& 是一个泛型链表...T表示节点元素类型比如List&int& intL表示一个元素为int的链表intList.Add(34); //添加intList.Remove(34);//删除intList.RemoveAt(0); //删除位于某处的元素intList.C //链表长度还有Insert,Find,FindAll,Contains等方法,也有索引方法 intList[0] = 23;1.减少了装箱拆箱2.便于编译时检查数据类型List&Object& 就相当于 System.Collections命名空间里面的List
采纳率:94%
来自团队:
p>B继承AList&B&as&B&();&List&list=new&myfun(list.Cast&A&List&()&nbsp
本回答被提问者采纳
为您推荐:
其他类似问题
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。List&子类&转List&父类&过程中犯的一些错误
时间: 00:57:53
&&&& 阅读:5618
&&&& 评论:
&&&& 收藏:0
标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&新人犯的错误,记录一下供以后参考。
1 public class A
public string Name{get;set;}
6 public class B:A
public int Age{get;set;}
有一个方法,需要类B age作为条件,最后要返回的是其父类A的集合
1 public List&A& GetAByAge(int age)
本心想着,B是A的子类,直接返回List&B&即可,但实际是不行。于是我开始找原因,寻寻觅觅发现,原来思路出问题了。
事实是这样子的,虽然A是B的子类,但是List&A& 和List&B&他的实际类型都是List&T&,A、B只是List&T&对象的一个泛型而已。所以,直接返回肯定是不行的,强转,自然也是有问题的。那要怎么解决呢?高手告诉我,其实List已经提供了这种转的方法。
比如b是List&B&类型的一个对象,那么就可以利用b.Cast&A&().ToList();来转换为List&A& 对象。
另外我也发现,可以这么写List&A& a=new List&A&(b);这种写法我没测试,大家可以试试,应该也是可以的。标签:&&&&&&&&&&&&&&&&&&&&&&&&&&&原文地址:http://www.cnblogs.com/baiyunchen/p/4014622.html
&&国之画&&&& &&&&chrome插件&&
版权所有 京ICP备号-2
迷上了代码!

我要回帖

更多关于 ajax遍历list集合 的文章

 

随机推荐