将存储在对象引用中的结果集值修剪为两位小数



我以以下方式将结果集值存储在列表中-

  while(rs.next()) 
                        {
                         Comp_Mps_sext ref_drop=new Comp_Mps_sext();
                         ref_drop.setLogtime(rs.getString(1));
                         ref_drop.setBeam_current(rs.getString(2));
                         ref_drop.setBeam_energy(rs.getString(3));
                         ref_drop.setP44_readback(rs.getString(4));
                         ref_drop.setP44_setvalue(rs.getString(5));
                         ref_drop.setP44_vmeset(rs.getString(6));
                         ref_jsp.add(ref_drop);

                    }   

其中Comp_Mps_sext是类名。按以下格式修剪值的ebst方法是什么##。##然后加入数组。

编辑-1

ref_jsp被定义为-

List<Comp_Mps_sext> ref_jsp=new ArrayList<Comp_Mps_sext>();

如果你只想要字符串,那么格式化结果的一个简单例程是:

private String hundreths(String in) {
  int dotAt = in.indexOf(".");
  if (dotAt < 0) // no decimal point??
    return in + ".00";
  if (dotAt + 2 < in.length())
    in += "00";
  return in.substring(0, dotAt + 2);
  }

然后查看您的结果:

ArrayList<String> myArrayList() = new ArrayList<String>();
while(rs.next()) 
  {
  Comp_Mps_sext ref_drop=new Comp_Mps_sext();
  String result = rs.getString(1)
  ref_drop.setLogtime(result);
  myArrayList.add(hundreths(result));
  ....

请注意,这将截断到两个位置,而不是四舍五入值。

最新更新