在Java中,如何检测一个数组中是否包含某一个数据?

如题所述

在Java中,检测一个数组是否包含某一个数据,通常有四种方法:

(1)for循环

(2)转换为List,调用Arrays.asList(arr).contains方法

(3)使用Set

(4)使用Arrays.binarySearch()方法

下面为上述四种方法的具体代码实现:

1、使用for循环

publicstaticbooleanuseLoop(String[]arr,StringtargetValue){

for(Strings:arr){

if(s.equals(targetValue))

returntrue;

}

returnfalse; 

}

2、转换为List,调用Arrays.asList(arr).contains方法

publicstaticbooleanuseList(String[]arr,StringtargetValue){

returnArrays.asList(arr).contains(targetValue);

}

3、使用Set

publicstaticbooleanuseSet(String[]arr,StringtargetValue){

Set<String>set=newHashSet<String>(Arrays.asList(arr));

returnset.contains(targetValue);

}

4、使用Arrays.binarySearch()方法

特别说明:binarySearch()二分查找仅适用于有序数组,如果不是有序数组,则报异常

publicstaticbooleanuseArraysBinarySearch(String[]arr,StringtargetValue){

inta=Arrays.binarySearch(arr,targetValue);

if(a>0){

returntrue;

}else{

returnfalse;

}}

扩展资料:

Java种List列表的contains方法:

该方法是通过遍历集合中的每一个元素并用equals方法比较是否存在指定的元素。

publicbooleancontains(Objecto){

Iterator<E>it=iterator();

if(o==null){

while(it.hasNext())

if(it.next()==null)

returntrue;

}else{

while(it.hasNext())

if(o.equals(it.next()))

returntrue;

}

returnfalse;

}

参考资料来源:Java官网-API-Arrays

参考资料来源:Java官网-API-InterfaceList

温馨提示:内容为网友见解,仅供参考
无其他回答

在Java中,如何检测一个数组中是否包含某一个数据?
在Java中,你需要确定一个数组是否包含特定的数据,有多种方法可供选择。以下是四种常见的实现策略:首先,你可以使用for循环遍历数组,逐个比较元素,如以下代码所示:1.使用for循环 publicstaticbooleanuseLoop(String[]arr,StringtargetValue){for(Strings:arr){if(s.equals(targetValue)){returntrue;}}...

在Java中,如何检测一个数组中是否包含某一个数据?
1、使用for循环 publicstaticbooleanuseLoop(String[]arr,StringtargetValue){ for(Strings:arr){ if(s.equals(targetValue))returntrue;} returnfalse;} \/iknow-pic.cdn.bcebos.com\/d62a6059252dd42a816ca8e00e3b5bb5c9eab810"target="_blank"title="点击查看大图"class="ikqb_img_alink">\/iknow...

在Java中,如何检测一个数组中是否包含某一个数据?
在Java中,检测一个数组是否包含某一个数据,通常有四种方法:(1)for循环 (2)转换为List,调用Arrays.asList(arr).contains方法 (3)使用Set (4)使用Arrays.binarySearch()方法 下面为上述四种方法的具体代码实现:1、使用for循环 publicstaticbooleanuseLoop(String[]arr,StringtargetValue){ for(...

如何判断一个数组里是否包含一个数
可以通过遍历数组或使用某些编程语言提供的内置函数来判断一个数组是否包含某个数。详细解释:方法一:遍历数组 最直接的方法是遍历数组的每个元素,逐个检查是否与目标数相等。这种方法适用于所有类型的数组,无论其大小或编程语言。其基本原理是简单的比较操作。方法二:使用内置函数 许多编程语言提供了内置...

java 如何高效判断一个数组是否包含另一个数字
判断数组是否包含另一个数字,肯定要先遍历数组。 而遍历数组中,for循环效率很高。int x = 3;\/\/测试数字 int[] a = new int[]{1,2,3,4};int[] b = new int[]{3,4,5};boolean flag = false;\/\/标示 是否包含,false为不包含,true为包含 for(int i=0;i<a.length;i++){ for(...

如何高效检查一个数组中是否包含某个值
如何检查一个数组(未排序)中是否包含某个特定的值?在Java中,这是一个非常有用并又很常用的操作。同时,在StackOverflow中,有 时一个得票非常高的问题。在得票比较高的几个回答中,时间复杂度差别也很大。在下面的例子中,D瓜哥将展示每个方法花费的时间。1、不同的实现方式 1) 使用List:1 ...

java中怎么判断一个字符串数组中包含某个字符或字
可以用contains()这个方法,判断一个字符串是否包含另一个字符串。可以用repalce()这个方法,把想删除的字符替换成空。public class Test { public static void main(String[] args) { String s1 = "abc";String s2 = "1111abcdefe";if(s2.contains(s1)){ System.out.println("s2包含了s1");...

java中怎么判断一个字符串数组中包含某个字符或字符串
public static void main(String[] args) { String string = "被检测的字符串"; String[] arr = {};\/\/字符串数组 boolean tag = true; for (String str : arr) { if (str.equals(string)) { System.out.println("存在"); tag = false; break; } } ...

java中怎么判断一个字符串数组中包含某个字符或字符串
if(strs[i].indexOf(s)!=-1){\/\/循环查找字符串数组中的每个字符串中是否包含所有查找的内容 return true;\/\/查找到了就返回真,不在继续查询 } } return false;\/\/没找到返回false } public static void main(String[] args){ String[] strs={"aaa","bbbb","cccc","dddd"};\/\/定义字符...

在Java中如何高效的判断数组中是否包含某个元素
使用indexof()

相似回答
大家正在搜