I want to remove the leading zeros in the decimal numbers.
So i want the output should be
.324
not
0.324
.
I tried str.replaceFi
do you want this for printing purposes? you wont be able to do any math using this, so i guess yes. then you could do:
BigDecimal number =new BigDecimal(0.254);
System.out.println(number.toString().substring(number.toString().indexOf("0.")+1));
output
.254000000000000003552713678800500929355621337890625
if you are trying to format BigDecimal
having value 0.324
to .324
. Then below works
BigDecimal bd=new BigDecimal("0.23");// this will replace with your BigDecimal
DecimalFormat df=null;
//check if number is a fraction
if(bd.remainder(BigDecimal.TEN).compareTo(BigDecimal.ZERO)>0)
df=new DecimalFormat(".###");
else
df=new DecimalFormat("##");
System.out.print(df.format(bd));// .format returns string as .23
0.23->.23
0->0
90->90
80.12->80.12
Try this
str = str.replaceFirst("^0\\.", ".");