English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java 기본 강의

Java 흐름 제어

Java 배열

Java 상대적 객체(I)

Java 상대적 객체(II)

Java 상대적 객체(III)

Java 예외 처리

Java 목록(List)

Java Queue(큐)

Java Map 집합

Java Set 집합

Java 입력/출력(I/O)

Java Reader/Writer

Java 다른 주제

Java 프로그램이 배열이 주어진 값을 포함하고 있는지 확인합니다

Java 예제 모든 것

이 프로그램에서는 Java에서 주어진 값을 포함하고 있는지 확인하는 방법을 배웁니다

예제1Int 배열이 주어진 값을 포함하고 있는지 확인합니다

public class Contains {
    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 + " 找到");
        else
            System.out.println(toFind + " 未找到");
    }
}

이 프로그램을 실행하면, 출력은 다음과 같습니다:

3 찾았습니다

위의 프로그램에서는 변수 num에 저장된 정수 배열이 있습니다. 또한, 찾으려는 숫자는 toFind에 저장되어 있습니다

지금, num의 모든 요소를 foreach 루프로 순회하며 toFind가 n과 같은지 확인합니다

그렇다면 find를 true로 설정하고 루프를 빠져나갑니다. 그렇지 않으면 다음 반복으로 넘어갑니다

예제2배열이 주어진 값을 포함하고 있는지 Stream을 사용하여 확인합니다

import java.util.stream.IntStream;
public class Contains {
    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 + " 找到");
        else
            System.out.println(toFind + " 未找到");
    }
}

이 프로그램을 실행하면, 출력은 다음과 같습니다:

7 찾지 못했습니다

위의 프로그램에서는 foreach 루프를 사용하지 않고 배열을 IntStream로 변환하여 anyMatch() 메서드를 사용했습니다

anyMatch() 메서드는 표현식, 함수 또는 불리언 값을 반환하는 함수를 사용합니다. 우리의 예제에서는 표현식이 스트림의 각 요소 n과 toFind를 비교하고 true 또는 false를 반환합니다

요소 n 중 하나라도 true를 반환하면 found도 true로 설정됩니다

예제3배열이 원시형 타입의 주어진 값을 포함하고 있는지 확인합니다

import java.util.Arrays;
public class Contains {
    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 + " 找到");
        else
            System.out.println(toFind + " 未找到");
    }
}

이 프로그램을 실행하면, 출력은 다음과 같습니다:

Four 找到

위의 프로그램에서는 원시 데이터 타입 String을 사용하고 Arrays의 stream() 메서드를 사용하여 이를 스트림으로 변환하고, anyMatch()를 사용하여 배열이 주어진 값 toFind를 포함하는지 확인했습니다

Java 예제 모든 것