double qjts = Double.parseDouble("-"+(String) maps2.get("qjts")); 中 maps2.get("qjts")为正数,但是最后结果还是正数,怎么让其返回负数
时间: 2023-07-21 21:23:55 浏览: 167
`Double.parseDouble("-"+(String) maps2.get("qjts"))`这个表达式会将`maps2.get("qjts")`返回的字符串类型的数值转换为double类型的数值,并在前面加上负号。如果你想让它返回负数,可以将`maps2.get("qjts")`返回的字符串前面加上负号,再进行转换。
例如,假设`maps2.get("qjts")`返回的字符串是"50.0",那么我们可以将代码改为:
```
double qjts = Double.parseDouble("-" + maps2.get("qjts"));
```
这样,`qjts`的值就会变成-50.0,也就是一个负数。
相关问题
double qjts = Double.parseDouble("-"+(String) maps2.get("qjts"));如何让这个返回负数
`Double.parseDouble("-"+(String) maps2.get("qjts"))`这个表达式可以用来将字符串类型的数值转换为double类型的数值,并且在前面加上负号。如果你想让它返回负数,只需要将maps2.get("qjts")返回的值改为一个正数即可。例如,如果maps2.get("qjts")返回的值为"5.0",那么将它改为"-5.0"即可让`Double.parseDouble("-"+(String) maps2.get("qjts"))`返回负数。
for (Map<String, Object> map : dataList) { String lx = map.get("lx").toString(); double syts = 0.0; for (Map<String, Object> maps2 : dataList) { int i = DateUtil.compareDate(map.get("cjsj").toString(),maps2.get("cjsj").toString()); double qjts =0.0; if (StringUtils.equals(lx, "1") && i>=0) { String qjkssj = map.get("qjkssj").toString(); String qjjssj = map.get("qjjssj").toString(); String startTime = map.get("start_date").toString(); String endTime = map.get("end_date").toString(); StringBuffer stringBuffer = new StringBuffer(); StringBuffer append = stringBuffer.append(qjkssj).append(" ").append(startTime); StringBuffer stringBuffer1 = new StringBuffer(); StringBuffer append1 = stringBuffer1.append(qjjssj).append(" ").append(endTime); map.put("startTime", append); map.put("endTime", append1); map.put("jsts",map.get("qjts")); map.put("zjts",0); // qjts = Double.parseDouble("-"+(String) maps2.get("qjts")); qjts = Double.parseDouble("-" + maps2.get("qjts")); } else { map.put("jsts",0); map.put("zjts",map.get("qjts")); qjts = Double.parseDouble((String) maps2.get("qjts")); } syts +=qjts; } map.put("syts",syts);为什么syts 计算的不是负数
根据代码中的逻辑,syts是一个累加值,它在每次循环中都会加上qjts。在if语句块中,当lx等于1且i大于等于0时,qjts等于负数,因为代码中有"-"+,这是把负数转换成字符串的写法,所以syts会累加上负数。在else语句块中,qjts等于正数,因此syts会累加上正数。因此,syts计算的结果取决于qjts的正负性,而不是固定的正数或负数。
阅读全文