java array contains_java8新特性Java – Check if Array contains a certain value? - Java教程

Java examples to check if an Array (String or Primitive type) contains a certain values, updated with Java 8 stream APIs.

1. String Arrays

1.1 Check if a String Array contains a certain value “A”.

StringArrayExample1.java

package com.mkyong.core;

import java.util.Arrays;

import java.util.List;

public class StringArrayExample1 {

public static void main(String[] args) {

String[] alphabet = new String[]{"A", "B", "C"};

// Convert String Array to List

List list = Arrays.asList(alphabet);

if(list.contains("A")){

System.out.println("Hello A");

}

}

}

Output

Hello A

In Java 8, you can do this :

// Convert to stream and test it

boolean result = Arrays.stream(alphabet).anyMatch("A"::equals);

if (result) {

System.out.println("Hello A");

}

1.2 Example to check if a String Array contains multiple values :

StringArrayExample2.java

package com.mkyong.core;

import java.util.Arrays;

import java.util.List;

public class StringArrayExample2 {

public static void main(String[] args) {

String[] alphabet = new String[]{"A", "C"};

// Convert String Array to List

List list = Arrays.asList(alphabet);

// A or B

if (list.contains("A") || list.contains("B")) {

System.out.println("Hello A or B");

}

// A and B

if (list.containsAll(Arrays.asList("A", "B"))) {

System.out.println("Hello A and B");

}

// A and C

if (list.containsAll(Arrays.asList("A", "C"))) {

System.out.println("Hello A and C");

}

}

}

Output

Hello A or B

Hello A and C

2. Primitive Arrays

2.1 For primitive array like int[], you need to loop it and test the condition manually :

PrimitiveArrayExample1.java

package com.mkyong.core;

import java.util.Arrays;

import java.util.List;

public class PrimitiveArrayExample1 {

public static void main(String[] args) {

int[] number = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

if(contains(number, 2)){

System.out.println("Hello 2");

}

}

public static boolean contains(final int[] array, final int v) {

boolean result = false;

for(int i : array){

if(i == v){

result = true;

break;

}

}

return result;

}

}

Output

Hello 2

2.2 With Java 8, coding is much simpler ~

ArrayExample1.java

package com.mkyong.core;

import java.util.stream.IntStream;

import java.util.stream.LongStream;

public class TestDate {

public static void main(String[] args) {

int[] number = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

//Java 8

boolean result = IntStream.of(number).anyMatch(x -> x == 4);

if (result) {

System.out.println("Hello 4");

} else {

System.out.println("Where is number 4?");

}

long[] lNumber = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};

boolean result2 = LongStream.of(lNumber).anyMatch(x -> x == 10);

if (result2) {

System.out.println("Hello 10");

} else {

System.out.println("Where is number 10?");

}

}

}

Output

Hello 4

Hello 10

Note

To check if a primitive array contains multiple values, convert the array into a List and compare it like example 1.2 above.

References

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值