gpt4 book ai didi

java - 如何在java中添加一个名为number Of Digits()的新方法?

转载 作者:行者123 更新时间:2023-12-02 06:14:41 25 4
gpt4 key购买 nike

我有一个名为 public class ZeroCounter { 的程序。我想向其中添加一个名为 numberOfDigits() 的新方法,并在 main() 方法中添加一行来测试它。我应该怎样去做呢?下面是一小部分代码。

public class ZeroCounter   {
public static void main(String[] args)
{
System.out.println("Enter a nonnegative number:");
Scanner keyboard = new Scanner(System.in);
int number = keyboard.nextInt( ) ;

System.out.println(number + " contains " + numberOfZeros(number) + " zeros.");
} // End of main

更新代码:

import java.util.*;

public class ZeroCounter {
public static void main(String[] args)
{
System.out.println("Enter a nonnegative number:");
Scanner keyboard = new Scanner(System.in);
int number = keyboard.nextInt( ) ;

System.out.println(number + " contains " + numberOfZeros(number) + " zeros.");
int theDigit = keyboard.nextInt( ) ; //added for the digitcount
int digitCount = numberOfDigits(number, theDigit);

}// End of main

// * * * * Recursive Method * * * *
public static int numberOfZeros(int n) {
n = Math.abs(n); // Make sure the number is not negative.

// 1. STOPPING CONDITION: Number has only only digit.
if ( n < 10 ) {
// if( n == 0 ) return 1; else return 0;

return n==0 ? 1: 0 ; // Conditional operator.

} // end of the outer if block handling the stopping condition.


// 2. Else handle the case of two or more digits using recursion.
else {

return n%10 == 0 ? 1 + numberOfZeros(n/10): numberOfZeros(n/10) ; // Conditional operator.


// if (n%10 == 0) return 1 + numberOfZeros(n/10);
// else return numberOfZeros(n/10);
} // end of outer else block


} // end of recursive method method numberOfZeros. * * * * * * * *


public static int numberOfDigits(int n, int digit) {
n = Math.abs(n); // Make sure the number is not negative.
if ( n < 10 ) {
if( n == digit ) return 1;
else return 0;
} // end of the outer if block handling the stopping condition.
// 2. Else handle the case of two or more digits using recursion.
else {
if (n%10 == digit) return 1 + numberOfDigits(n/10, digit);
else return numberOfDigits(n/10, digit);
} // end of outer else block
} // end of recursive method method numberOfZeros. * * * * * * * *
}

最佳答案

public class ZeroCounter   {
public static void main(String[] args) {
System.out.println("Enter a nonnegative number:");
Scanner keyboard = new Scanner(System.in);
int number = keyboard.nextInt( ) ;

System.out.println(number + " contains " + numberOfZeros(number) + " zeros.");
} // End of main

private static int numberOfZeros(int number) {
int result = ///// calculation
return result;
}
}

在继续之前,您可能需要先阅读更多有关 Java 以及类、方法和函数如何工作的内容。

关于java - 如何在java中添加一个名为number Of Digits()的新方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21605480/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com