Java教程

Java 程序检查数组是否包含给定值

用于检查数组是否包含给定值的 Java 程序

在本程序中,您将学习在 Java 中检查数组是否包含给定值。
要理解此示例,您应该了解以下Java 编程主题:
Java 数组 Java 数据类型(原语)

示例 1: 检查 Int Array 是否包含给定值

class Main {
  public static void main(String[] args) {
    int[] num = {1, 2, 3, 4, 5};
    int toFind = 3;
    boolean found = false;
    for (int n : num) {
      if (n == toFind) {
        found = true;
        break;
      }
    }
    
    if(found)
      System.out.println(toFind + " is found.");
    else
      System.out.println(toFind + " is not found.");
  }
}
输出
3 is found.
在上面的程序中,我们有一个整数数组存储在变量 num 中。同样,要查找的数字存储在 toFind 中。
现在,我们使用 for-each loop 来遍历 num 并单独检查 toFind 是否等于 n
如果是,我们将 found 设置为 true 并中断循环。如果没有,我们将进行下一次迭代。

示例 2: 使用 Stream 检查数组是否包含给定值

import java.util.stream.IntStream;
class Main {
  public static void main(String[] args) {
    
    int[] num = {1, 2, 3, 4, 5};
    int toFind = 7;
    boolean found = IntStream.of(num).anyMatch(n-> n == toFind);
    if(found)
      System.out.println(toFind + " is found.");
    else
      System.out.println(toFind + " is not found.");
      
  }
}
输出
7 is not found.
在上面的程序中,我们没有使用 for-each 循环,而是将数组转换为 IntStream 并使用它的 anyMatch() 方法。
anyMatch() 方法采用谓词、表达式或返回布尔值的函数。在我们的例子中,谓词将流中的每个元素 ntoFind 进行比较,并返回 truefalse
如果任何元素 n 返回 truefound 也会设置为 true。 >

示例 3: 检查数组是否包含非原始类型的给定值

import java.util.Arrays;
class Main {
  public static void main(String[] args){
    String[] strings = {"One","Two","Three","Four","Five"};
    String toFind= "Four";
    boolean found = Arrays.stream(strings).anyMatch(t-> t.equals(toFind));
    if(found)
      System.out.println(toFind + " is found.");
    else
      System.out.println(toFind + " is not found.");
  }
}
输出
Four is found.
在上面的程序中,我们使用了一个非原始数据类型 String 并使用了 Arraysstream() 方法来首先将其转换为流和 anyMatch() 以检查数组是否包含给定值 toFind
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4