计算给定整数中数字个数的 Java 程序
假设给定一个整数作为输入,我们的任务是编写一个 Java 程序来计算该整数的位数。对于这个问题,创建一个计数器变量并将其初始化为 0。将给定的整数值除以 10,直到整数变为 0,并为每次循环递增计数器变量。
使用 while 循环
Java 中的 while 循环 是一种控制流语句,它允许根据给定的布尔条件重复执行代码。对于给定的问题,我们使用此循环来检查指定的整数值是否为 0。如果值不为零,我们将给定的整数值除以 10 并递增计数变量。
当整数变为零时,循环将停止,计数器变量将保存总位数。
示例
下面的 Java 程序演示了如何使用 while 循环计算给定整数的位数。
public class CountingDigitsInInteger { public static void main(String args[]) { // to store the number of digits int count = 0; // given integer int num = 1254566; System.out.println("given number:: " + num); // loop to count number of digits while(num != 0){ num = num / 10; count++; } System.out.println("Number of digits in the given integer are:: " + count); } }
以上代码的输出如下:
given number:: 1254566 Number of digits in the given integer are:: 7
使用 String.valueOf() 方法
Java.lang 包的 String 类中提供了 valueOf() 方法。它用于返回传递参数的字符串表示形式。参数可以是任何数据类型,例如整数、字符或双精度数。
在这种方法中,我们使用 **String.valueOf()** 方法将整数转换为其相应的字符串表示形式,然后我们查找其长度,这将给出位数。
示例
让我们看看 String.valueOf() 方法在计算位数中的实际应用。
public class CountingDigitsInInteger { public static void main(String args[]) { // given integer int num = 254668899; System.out.println("given number:: " + num); int count = String.valueOf(num).length(); System.out.println("Number of digits in the given integer are:: " + count); } }
以上代码的输出如下:
given number:: 254668899 Number of digits in the given integer are:: 9
使用递归
这是计算给定整数的位数的最佳解决方案。递归方法 中,我们创建一个方法,该方法将调用自身,直到给定的整型变量不为零。在每次调用期间,它将除以整数并递增计数。
示例
在这个 Java 程序中,我们使用递归的概念来计算给定整数的位数。
public class CountingDigitsInInteger { public static int counting(int num) { if (num == 0) { return 0; } return 1 + counting(num / 10); } public static void main(String[] args) { // given integer int num = 25468877; System.out.println("given number:: " + num); int count = counting(num); System.out.println("Number of digits in the given integer are:: " + count); } }
以上代码的输出如下:
given number:: 25468877 Number of digits in the given integer are:: 8
广告