Java如何判断一个整数有多少位

 更新时间:2024年05月01日 08:11:57   作者:醒省行  
这篇文章主要介绍了Java如何判断一个整数有多少位问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

Java判断一个整数有多少位

首先,封装一个判断位数的方法;使用for循环进行判断整数的位数。直到传进的整数小于数组中某个值时,停止循环。

	/**
     * 获取整数有多少位
     * @param num 要判断的整数
     * @return 该整数的位数
     */
    public static int getNumDigit(int num) {
        // 设置整数最大位数组参数
        int[] digits = {9, 99, 999, 9999, 99999, 999999, 9999999,
                99999999, 999999999, Integer.MAX_VALUE};
        // 循环判断num的大小
        for (int i = 0; ; i++) {
            // 当num的值小于digits[i]时停止循环,此时i+1便是当前num的位数
            if (num <= digits[i]) {
                return i + 1;
            }
        }
    }

测试:定义一个七位数的数字 1000000,调用获取整数位数的方法即可。

public static void main(String[] args) {
       int num = 1000000;
       int numDigit = getNumDigit(num);
       System.out.println(num + " 的位数是:" + numDigit);
}

测试结果:

测试结果

java获取一个整数的各个位数

两种方法~  

  • 第一种是取模运算  
  • 第二种是使用char数组进行分割开依次存到数组【推荐第二种】

获取一个四位数的各个位数

第一种

int qian =input/1000; //千位除以1000
            int bai = input/100%10;//百位除以100%10
            int shi = input%100/10;//十位%100/10
            int ge  = input%10;//个位直接%10
            System.out.println("千位数"+qian+"百位是"+bai+"十位是"+shi+"个位数是"+ge);

第二种

//实现数据 的排序 获取各个位数
public static void main(String[] args) {
    System.out.println("请输入一个四位数");
//定义变量接受
@SuppressWarnings("resource")
  int number = new Scanner(System.in).nextInt();
  if(number>999&&number<10000) {
  char[] chars = String.valueOf(number).toCharArray();
  System.out.println("千位"+chars[0]);
  System.out.println("百位"+chars[1]);
  System.out.println("十位"+chars[2]);
  System.out.println("个位"+chars[3]);
  }else {
    System.out.println("你输入的不是四位数··系统终止!!请重新输入!!");
  }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 如何配置cursor进行Java springboot项目开发

    如何配置cursor进行Java springboot项目开发

    本文介绍了如何在Cursor IDE中配置Java和Spring Boot项目开发环境,首先,设置了系统用户级别的JDK配置,以便在多个项目之间切换时不需要重新配置,然后,配置了Gradle环境变量,并安装了必要的Java开发插件,感兴趣的朋友跟随小编一起看看
    2025-02-02
  • SpringBoot静态资源及原理解析

    SpringBoot静态资源及原理解析

    这篇文章主要介绍了SpringBoot静态资源及原理解析,当创建一个jar工程时,想引入css等静态资源时,需要遵守SpringBoot的静态资源映射关系,通过WebMvcAutoConfiguration查看静态配置资源的规则,需要的朋友可以参考下
    2023-12-12
  • Java中定时器Timer致命缺点案例详解

    Java中定时器Timer致命缺点案例详解

    这篇文章主要介绍了Java中定时器Timer致命缺点,以Java中定时器Time为案例整理下我的学习方法,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • java乐观锁原理与实现案例分析

    java乐观锁原理与实现案例分析

    这篇文章主要介绍了java乐观锁原理与实现,结合具体案例形式分析了乐观锁的原理及java使用乐观锁实现自动派单功能的相关操作技巧,需要的朋友可以参考下
    2019-10-10
  • Spring AOP入门Demo分享

    Spring AOP入门Demo分享

    这篇文章主要介绍了Spring AOP入门Demo分享,涉及创建maven项目,编写切面类,通过bean配置关联等相关内容,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • java servlet结合mysql搭建java web开发环境

    java servlet结合mysql搭建java web开发环境

    之前写过一篇 servlet+oracle的文章,但是那是因为公司有可能接那么一个项目,然后我当时也比较闲,所以随便学了下,那玩意是白去研究了,因为公司后面并没接到那项目。
    2015-12-12
  • Struts2学习笔记(3)-DMI动态调用方式

    Struts2学习笔记(3)-DMI动态调用方式

    本文主要介绍Struts2的DMI动态调用的两种方式,简单实用,希望能给大家做一个参考。
    2016-06-06
  • 详解如何使用Java8 Steam流对Map进行排序

    详解如何使用Java8 Steam流对Map进行排序

    这篇文章主要给大家详细介绍了如何使用Java8 Steam流对Map进行排序,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-01-01
  • Java线程池实现原理总结

    Java线程池实现原理总结

    这篇文章主要给大家分享的是Java线程池实现原理总结,线程池参数、线程池执行流程等内容上总结,具有一定参考戒指,需要的小伙伴可以参考一下,希望对你有所帮助
    2022-01-01
  • 浅谈log4j的rootLogger及其他坑爹的地方

    浅谈log4j的rootLogger及其他坑爹的地方

    这篇文章主要介绍了log4j的rootLogger及其他坑爹的地方,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论