迭代数组并搜索特定数字而不导入任何内容?

时间:2018-02-02 12:29:03

标签: java arrays for-loop

在Java 7中是否有正确的方法在数组上使用for循环进行迭代,然后在不导入任何内容的情况下检查特定数字?

我已经多次看到人们指向ArrayListList,但如果我必须手动迭代int数组而不导入java.util?以外的任何内容

2 个答案:

答案 0 :(得分:3)

你只需要一个简单的for循环,例如:

/**
 * @return the index of {@code num} in the given array, or `-1` if it's not there
 */
public static int findInArray(int[] arr, int num) {
    for (int i = 0; i < arr.length; ++i) {
        if (arr[i] == num) {
            return i;
        }
    }
    return -1;
}

答案 1 :(得分:2)

是的,有,你可以在这里使用a for each循环:

Type[] arr = { /* Values */ };

for (Type val : arr)
{
    if (val == /* Value you want to check */)
        // Or use .equals if the type isn't a primitive type, such as String
    {
        // Do something with val
        break;
    }
}

如果您的数据很大且已整理,您甚至可能希望实施binary search