【发布时间】:2017-02-02 16:12:47
【问题描述】:
我需要编写一个名为hasEight() 的布尔方法,它接受int 作为输入,如果数字包含数字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();
}
}
【问题讨论】:
-
这是作业吗?如果是这样,您可能想要这样标记它,向我们展示您迄今为止所做的尝试,并解释您遇到的问题。
-
808的号码是多少?小数对吗?所以它是8x10^2 + 0x10^1 + 8x10^0。所以;鉴于此,您将如何单独访问每个数字? -
看起来更像是一个智商难题,而不是相关的家庭作业。什么时候需要知道如何做到这一点?
-
@BoristheSpider:但是
0x10^1 == 17.
标签: java