Java如何判断一个整数有多少位
作者:醒省行
这篇文章主要介绍了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("你输入的不是四位数··系统终止!!请重新输入!!"); } }
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。