方法一:
import java.util.Scanner;
/*输入一个10位以内的数字,判断此数字共有几位,;
*/
public class NumDigit {
public static void main(String[] args){
NumDigit obj1=new NumDigit();
obj1.digit();
}
/*判断方法(使用强制类型转换)*/
public void digit(){
System.out.println("请输入一个数字:");
Scanner r1=new Scanner(System.in);
int a=r1.nextInt();//使用a来接收控制台输入的int类型字符
String b=a+"";//将int类型转换为String类型
int i;
char c;
for(i=0;i<b.length();i++){
c=b.charAt(i);
System.out.println(c+"位于第"+(i+1)+"位");//将每一位数字处于第几位输出
}
System.out.println(i);//输出位数共有多少位
r1.close();
}
}
方法二:
import java.util.Scanner;
public class Digit {
public static void main(String[] args){
Scanner s=new Scanner(System.in);
System.out.print("请输入一个数字:" + " ");
int num;
num=s.nextInt();
System.out.print(num+" ");
//将输入的数字除以10,以count记录次数,当结果num为0的时候,count的值即为数字的位数
for(int count=1;count<=10;count++){
num=num/10;
if(num==0){
System.out.println("是个 "+count+" 位的数!");
break;
}
}
s.close();
}
}