如得到一个int数为:4523。怎么向上取整为5000。
4100 也向上取整为5000
同理但凡数值后面有值全部向上取整
应该是可以的
num = 4523;
num = (int)(Math.ceil(num/100.00)*100)
比较笨的办法......
Integer data = 4523;
String dataStr = data.toString();
int length = dataStr.length();
char[] array = dataStr.toCharArray();
boolean isadd = false;
for(int i = 1;i<length;i++){
if(Integer.valueOf(String.valueOf(array[i])) > 0){
isadd = true;
break;
}
}
Integer result = 0;
if(isadd){
for(int i = 1;i<length;i++){
array[i] = '0';
}
Integer headNum = Integer.valueOf(array[0])+1;
array[0] = headNum.toString().charAt(0);
result= Integer.valueOf(String.valueOf(array));
}else{
result = data;
}
return result;
int num = 1250;//你的数字
int copy = num;
int scale = 10;
while(copy >= 10){
copy = num / scale;
scale = scale * 10;
}
scale = scale / 10;
if(num % scale !=0){
num = (copy+1)*scale;
}