java - 我们可以使用 contains() 方法在变量中查找数字吗?
问题描述
在这个 Java 程序中,我想从键盘输入值并检查变量是否包含某个数字。
我正在使用 contains 方法来确定变量是否包含特定数字。写代码的时候出错了。有人可以解释错误以及如何解决吗?
编码:
package nested_package;
import java.util.Scanner;
public class Age_prog {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println("a=" + a + "\n" + "b=" + b);
if (a.contains(1)) { // ERROR IN THIS LINE
System.out.println("true");
} else {
System.out.println("false");
}
}
}
解决方案
您的编译器抱怨的原因是 -- int
(and Integer
) 在 Java 中没有名为contains()
. 该方法属于 String 类。
一种方法是将您的数字转换为字符串并使用该contains
方法。
另一种方法——你可以编写你的contains
方法来获取两个整数并返回一个布尔值(我命名它containsDigit
以避免混淆)。
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int b = sc.nextInt();
System.out.println("a=" + a + "\n" + "b=" + b);
System.out.println(containsDigit(a, 1));
}
private static boolean containsDigit(int a, int b) {
while (a > 0) {
if (a % 10 == b) {
return true;
}
a /= 10;
}
return false;
}
推荐阅读
- android - 在 Android Studio 2.3.3 中更新到 gradle 3.2.1 不起作用
- python - 为什么我的Trackbar的值总是-1
- lisp - Lisp 3的倍数之和
- sml - SML:从元组列表中创建一个列表,每个元组的第二个元素
- python - Python:“NoneType”对象不可下标“错误
- php - PHP 持久延迟 HTTP 连接
- php - 在 laravel 6 上安装 Doctrine 失败
- javascript - 如何将 Child_process.spawn 的“Promise”语法转换为“async/await”语法
- python - 在 QFileDialog.getExistingDirectory Pyqt5 中按数字排序
- javascript - 如何在 ES6 中使用可选参数扩展构造函数+方法?