java中如何打印下面代码list里面的值?解决了加分!

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中如何打印下面代码list里面的值?解决了加分!相关的知识,希望对你有一定的参考价值。

List<Cn2> cirList = gejieDao
.getList(
Cn2.class,
"select * from cn2 where EQUIPMENT in ("+cir+") order by EQUIPMENT");
System.out.println(cirList+"11111<<<<<<<<<<<<<<<<<<<");
List<Cn2> equip = new ArrayList<Cn2>();
for (Cn2 cn2 : cirList)
equip.add(cn2);

System.out.println(equip+"11111<<<<<<<<<<<<<<<<<<<");
return equip;

这是一个springmvc+hibernate的框架。怎么样能打印出cirList和equip的值?现在打印出来的都是实体类。
我也get不出来值。

1、如果list中是非对象组成的,一个一个的记录,则可以使用list.get(i)来循环管将其输出,其中i为for循环中的自增长变量,如下:

for(int i=0;i<list.size();i++)
    System.out.println(list.get(i));

2、如果list中是查找数据库保存的某一类中对象的值,一条或者多条,则需要先用该类的对象进行接收,再输出,如下:

for(int i=0;i<list.size();i++)

    User user = list.get(i);
    System.out.println(user.getId);
参考技术A cirList是一个List啊,你要循环list打印才行,equip也一样.

把System.out.println(cirList+"11111<<<<<<<<<<<<<<<<<<<");换成下面代码

for(int i=1;i<cirList.size();i++)
Cn2 c_cn2 = list.get(i); //这样就得到list里的一个Cn2对象了
System.out.println(c_cn2.getXXX() +"11111<<<<<<<<<<<<<<<<<<<");
//这里的getXXX()方法对应你Cn2类里的变量的get方法
追问

int c_list = list.get(i);

这个list.get(i);的list报错啊,我换了cirList,也不对啊

追答

答案我修改了,你再看看吧,刚才list.get(i);会出错的
list.get(i); 要改成cirList.get(i);

本回答被提问者采纳
参考技术B 下面的代码呢?

java 比较两个list数组问题

如题所示 java 比较两个list数组问题

list1 里面的值是(12,34,25,58,69,78)
list2 里面的值是(1,54,25,69,78)
比较 list1 和 list2

最后想得到的结果是从小到大排序 没有重复(1,12,25,34,54,58,69,78)
求代码
尽量不要改变 List 类型 ,另外 list1 里面的值 是通过读路径读出来的值,所以里面不是 Integer 类型。

我这有种解法:
1、将list1和list2进行合并,在合并过程中去重。
2、用Collections.sort()进行排序就行了。代码如下:
List<Integer> list = new ArrayList<Integer>();
for (Integer i : list2)
if (list.indexOf(i) == -1)
list.add(i);


for (Integer i : list1)
if (list.indexOf(i) == -1)
list.add(i);


Collections.sort(list);
参考技术A 说一点个人想法,用两个for第一个for(int i=0,i<list1.size(),i++)取出 n=list1.get(i),与第二个x=for(int j=0,j<list2.size(),j++)这样l进行一第一个for(i)的时候n将会与list2.size()个x相比较,你就比较一个是否相等,如果有相等的,不操作,如果没有相等的,就把list1.get(i)放进list2里面,list2.add(list1.get(i))这样当for(i)完了以后不相同的数就全部到了list2里面,然后对这个list2进行一个冒泡排序,就行了 ,如果你不是一个懒家伙看着我说的应该就做得出了 参考技术B 你这样的问题怎么做?尽量不改变list类型什么意思嘛?我可以理解为重新建个list,然后将list1和list2比较得到的值放进刚建的list里?或者是比较后直接输出?不管怎么做了,我可以这么去做不?取list1.get(i)和list2.get(j)来比较,如果小的先入list里,而大的留着继续比较,相同的就选择list1.get(i)或者list.get(j)的一个放进list里。不过先得排下原来给的list的序吧?下面按着我这个思想编个程序你吧!
public class ListSort
public static void main(String[] args)
List<Integer> list1 = new ArrayList<Integer>();
list1.add(34);
list1.add(69);
list1.add(25);
list1.add(12);
list1.add(58);
list1.add(78);
List<Integer> list2 = new ArrayList<Integer>();
list2.add(1);
list2.add(54);
list2.add(25);
list2.add(69);
list2.add(78);
List list = new ListSort().sort(sortList(list1),
sortList(list2));
int length = list.size();
for(int i=0;i<length;i++)
System.out.print(list.get(i)+" ");



private static List<Integer> sortList(List<Integer> list)
List<Integer> resultList = new ArrayList<Integer>();
int length = list.size();
for(int i=0;i<length;i++)
int count = 0;
for(int j=i+1;j<length;j++)
if(list.get(i)>list.get(j))
list.add(i, list.get(j));
list.remove(j+1);



for(int i=0;i<length;i++)
System.out.print(list.get(i)+" ");

return resultList;


public List sort(List<Integer> list1,List<Integer> list2)
List<Integer> list = new ArrayList<Integer>();
int i = 0;
int j = 0;
int length_i= list1.size();
int length_j= list2.size();
while(i<length_i&&j<length_j)
if(list1.get(i)<list2.get(j))
list.add(list1.get(i));
i++;

else if(list1.get(i)==list2.get(j))
list.add(list1.get(i));
i++;
j++;

else if(list1.get(i)>list2.get(j))
list.add(list2.get(j));
j++;


return list;

这里提醒你,你也可以把list1和list2加入一个List里后再比较也行。
参考技术C 上面几位的方法太麻烦了 我这里有个很简单的办法 几行代码搞定:

HashSet<Integer> hSet = new HashSet<Integer>(); //用set是为了去掉重复元素

for (Integer i : list1)
hSet.add(i);

for (Integer i : list2)
hSet.add(i);

ArrayList<Integer> list = new ArrayList<Integer>(hSet); //这里满足结果为list

Collections.sort(list); //这里排序

你最后打印下list的内容 就是你要的输出结果
参考技术D 方法1:
合并两个list为1个list,然后使用冒泡、比较等排序法排序
方法2:
转化为数组 很容易,进行排序,排序完再转化为list

方法有了,自己写代码吧

以上是关于java中如何打印下面代码list里面的值?解决了加分!的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Java 中打印出 List 的所有元素?

Java 如何打印出List中得值

如何去掉一个list中重复的数据

java如何给list里面的list单独添加元素

java怎样判断list是不是有值

java list集合问题