利用while循环以及除法取整实现:
public class java_11 {
public static void main(String[] args) {
int num = 185200;
int count = new java_11().getDigits(num); //调用求位数函数
System.out.println(num+"是"+count+"位数");
}
public int getDigits(int num){
int a = num/10;//定义一个余数
int b = 0;//初始化位数
while (num!=0){
num = num/10; //取num除10之后的整数
b++; //位数加1
}
return b;
}
}
使用for循环实现
public class java_11 {
public static void main(String[] args) {
int num = 185200;
int count = new java_11().getDigits(num);
System.out.println(num+"是"+count+"位数");
}
// 使用for循环实现
public int getDigits(int num){
int count = 0;
int a = 0;
// 法一 (这种更加简洁些)
for (;num!=0;num=num/10,count++){
}
// 法二
for (;num!=0;num=num/10){
count++;
}
return count;
}
}
结果是一样的,选择哪个方法都可以 ~