📜  java 数字中的数字 - Java (1)

📅  最后修改于: 2023-12-03 15:16:01.015000             🧑  作者: Mango

Java 数字中的数字

Java中有很多用于数字的方法,可以帮助工程师更好地处理数字。本文将介绍常用的几种方法。

获取数字的位数

通过将数字转换为字符串,可以使用字符串长度方法 length() 来获取数字的位数。

int num = 123456;
int digits = String.valueOf(num).length();
System.out.println("数字 " + num + " 的位数为:" + digits);

输出:

数字 123456 的位数为:6
获取数字的整数部分和小数部分

使用 Math.floor()Math.ceil() 可以获取数字的整数部分和向上取整的小数部分。使用减法可以计算得到向下取整的小数部分。

double num = 123.456;
double integerPart = Math.floor(num);
double decimalPartUp = Math.ceil(num - integerPart);
double decimalPartDown = num - integerPart - decimalPartUp;
System.out.println("数字 " + num + " 的整数部分为:" + integerPart);
System.out.println("数字 " + num + " 的向上取整的小数部分为:" + decimalPartUp);
System.out.println("数字 " + num + " 的向下取整的小数部分为:" + decimalPartDown);

输出:

数字 123.456 的整数部分为:123.0
数字 123.456 的向上取整的小数部分为:0.456
数字 123.456 的向下取整的小数部分为:0.0
获取数字的十进制位数

java.lang.Integerjava.lang.Long 类都提供了获取数字的十进制位数的方法。

int numInt = 123456;
long numLong = 12345678901234L;
int digitsInt = Integer.toString(numInt).length();
int digitsLong = Long.toString(numLong).length();
System.out.println("数字 " + numInt + " 的十进制位数为:" + digitsInt);
System.out.println("数字 " + numLong + " 的十进制位数为:" + digitsLong);

输出:

数字 123456 的十进制位数为:6
数字 12345678901234 的十进制位数为:14
获取数字的二进制位数

java.lang.Integerjava.lang.Long 类都提供了获取数字的二进制位数的方法。

int numInt = 123456;
long numLong = 12345678901234L;
int bitsInt = Integer.toBinaryString(numInt).length();
int bitsLong = Long.toBinaryString(numLong).length();
System.out.println("数字 " + numInt + " 的二进制位数为:" + bitsInt);
System.out.println("数字 " + numLong + " 的二进制位数为:" + bitsLong);

输出:

数字 123456 的二进制位数为:17
数字 12345678901234 的二进制位数为:54
获取数字的十六进制位数

java.lang.Integerjava.lang.Long 类都提供了获取数字的十六进制位数的方法。

int numInt = 123456;
long numLong = 12345678901234L;
int hexInt = Integer.toHexString(numInt).length();
int hexLong = Long.toHexString(numLong).length();
System.out.println("数字 " + numInt + " 的十六进制位数为:" + hexInt);
System.out.println("数字 " + numLong + " 的十六进制位数为:" + hexLong);

输出:

数字 123456 的十六进制位数为:5
数字 12345678901234 的十六进制位数为:6b98a586

以上就是本文介绍的几种处理数字的方法。这些方法可以帮助工程师更好地处理数字,提高代码的可读性和可维护性。