Java判断数字位数的方法总结

时间:2022-03-05 00:42:40

普通方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import java.util.Scanner;
 
public class Digits {
  public static void main(String[] args){
    Scanner input=new Scanner(System.in);//声明扫描仪变量
    System.out.println("请输入0-999999999整数");//系统提示输入
    try{ //监听异常
        while(true){
    int num=input.nextInt();
    int count = 0;
    if (num < 0 || num > 999999999)
    System.out.println("输入超出范围");
    else if (num==0)
      System.out.println("输入的是1位数");
    else {
       while(num > 0){
      num=num / 10;
      count++;
       }
       System.out.println("输入的是"+count+"位数");
        }
       }
    }
    catch (Exception e){ //捕捉异常
        System.out.println("请正确输入");
        e.printStackTrace(); //打印异常信息在程序中出错的位置及原因
    }
  }
}

一般函数/方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import java.util.Scanner;
 
public class Digits {
    boolean digits(int num){ //创建boolean类型的方法
         if (num < 0 || num > 999999999){
             return true;
         }
         else{
             return false;
         }
    }
  public static void main(String[] args){
    Digits d=new Digits (); //创建对象
    Scanner input=new Scanner(System.in);//声明扫描仪变量
    System.out.println("请输入0-999999999整数");//系统提示输入
    try{ //监听异常
        while(true){
    int num=input.nextInt();//取得下一行输入的值
    int count=0;
    if(num==0){
        System.out.println("输入的是1位数");
    }
    else if(d.digits(num)){ //对象调用digits方法
        System.out.println("输入超出范围");
    }
    else{
        while(num > 0){
            num=num / 10;
            count++;
            }
        System.out.println("输入的是"+count+"位数");
            }
        }
    }
    catch (Exception e){ //捕捉异常
        System.out.println("请正确输入");
        e.printStackTrace(); //打印异常信息在程序中出错的位置及原因
    }
  }
}

注解:方法二用到了面向对象的思想

原文链接:https://www.idaobin.com/archives/315.html