其他分享
首页 > 其他分享> > 关于list 使用toString 输出的是地址值的问题

关于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