【发布时间】:2013-07-07 09:00:39
【问题描述】:
用于检查数组中是否存在元素的简单 Java 代码:
import java.util.Arrays;
public class Main {
static int[] numbers = {813, 907, 908, 909, 910};
public static void main(String[] args) {
int number = 907;
//Integer number = 907; // the same thing -- it's not found.
boolean b = Arrays.asList(numbers).contains(number);
System.out.println(b); // => false
}
}
1) 为什么在数组中找不到907?
2) 如果有更好的方法,请继续分享您的知识。
更新:
据说asList 将您的int[] 转换为具有单个成员的List<int[]>:原始列表。但是,我希望下面的代码给我 1,但它给了我 5:
System.out.println(Arrays.asList(numbers).size());
【问题讨论】:
-
您是否尝试过使用 Integer number = 907; ?
-
女巫是你的问题?
-
不,
int不代表Integer。第一个是原始类型,第二个是对象。 -
@user2511414,哇,这真是个好主意,为此使用线程。 :p
-
“但是,我希望下面的代码给我 1,但它给了我 5” - 我认为你犯了一个错误。当我将该语句添加到您的程序并运行它时,它显示“1”。
标签: java