关于list 使用toString 输出的是地址值的问题
作者:互联网
代码
public int getAcStatus(int acId,String acStatus) { ArrayList<AcInfoVo> list = new ArrayList<>(); list = (ArrayList<AcInfoVo>) AcInfoMapper.getAcStatus(acId); for (int i = 0; i < list.size(); i++) { System.out.println(list.get(i)); }
或者是
String str = AcInfoMapper.getAcStatus(acId);
System.out.println(str);
输出
com.ac.entity.vo.AcInfoVo@fdsfdwy
原因
是因为默认情况下list并没有从写toString方法,所以会继承Object类的toString 也就是输出地址值,
解决办法
1,自己从写 toString 输出需要的值
2,用其他重写了toString的方法
3,用实体类接收查询到的数据,然后进行输出,或者其他操作
@Override public int getAcStatus(int acId, String acStatus) { AcVo acVo = AcMapper.getAcStatus(acId); String status = acVo.getAcStatus();
//输出获取到的数据
System.out.println(acVo.getAcStatus());
//传入的数据和获取到的数据做对比,相同返回 1 不同返回 -1 if (status.equals(acStatus)) { return 1; } else { return -1; } }
标签:String,int,getAcStatus,list,地址,toString,acId 来源: https://www.cnblogs.com/jdearfaust/p/16206822.html