如何检查一个数字是否包含某个数字?

Seb*_*uia 1 java

我需要编写一个名为 的布尔方法hasEight(),该方法将 aint作为输入,如果数字包含数字 8(例如 18、808),则返回 true。

我不想使用“字符串转换方法”。

我试过下面的代码,但只检查最后一位数字。

import java.util.Scanner;

public class Verificare {

    public static boolean hasEight(int numarVerificat) {
        int rest = numarVerificat % 10;
        return rest == 8;
    } 

    public static void main(String[] args) {
        Scanner keyboard = new Scanner(System.in);
        System.out.print("Introduceti numarul pentru verificare: ");
        int numar = keyboard.nextInt();
        Verificare.hasEight(numar);
        System.out.println("Afirmatia este: " + Verificare.hasEight(numar));
    
        keyboard.close();
    }
}
Run Code Online (Sandbox Code Playgroud)

Uda*_*day 9

如果您不想使用字符串转换方法,那么我认为可以使用此方法。

public bool hasEight(int number)
{
      while(number > 0)
      {
          if(number % 10 == 8)
              return true;

          number=number/10;
      }
      return false; 
} 
Run Code Online (Sandbox Code Playgroud)