function integerwithdot(s, iid){
var i;
s = s.toString();
for (i = 0; i < s.length; i++){
var c;
if (s.charAt(i) == ".") {
} else {
c = s.charAt(i);
}
if (isNaN(c)) {
c = "";
for(i=0;i<s.length-1;i++){
c += s.charAt(i);
}
document.getElementById(iid).value = c;
return false;
}
}
return true;
}
BigDecimal
является неизменным, поэтому вам нужно сделать следующее:
BigDecimal result = test.add(new BigDecimal(30));
System.out.println(result);
Используя лямбды Java8
List<BigDecimal> items = Arrays.asList(a, b, c, .....);
items.stream().filter(Objects::nonNull).reduce(BigDecimal.ZERO, BigDecimal::add);
Это покрывает случаи, где некоторые или все объекты в списке являются пустыми.
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test = test.add(new BigDecimal(30));
System.out.println(test);
test = test.add(new BigDecimal(45));
System.out.println(test);
Судя по документации Java здесь , add возвращает новый BigDecimal:
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test = test.add(new BigDecimal(30));
System.out.println(test);
test = test.add(new BigDecimal(45));
System.out.println(test);
На самом деле это довольно просто. Просто сделайте следующее:
BigDecimal test = new BigDecimal(0);
System.out.println(test);
test = test.add(new BigDecimal(30));
System.out.println(test);
test = test.add(new BigDecimal(45));
System.out.println(test);
См. Также: BigDecimal # add (java.math.BigDecimal)
BigInteger является неизменным, вам нужно сделать это,
BigInteger sum = test.add(new BigInteger(30));
System.out.println(sum);