java判断数组是否包含某个值
相信大家在操作Java的时候,经常会要检查一个数组(无序)是否包含一个特定的值?这是一个在Java中经常用到的并且非常有用的操作。
下面给出四种方式,其中最有效率的还是loop方式,有兴趣的话可以测试一下:
public boolean findStr(String[] args,String str){ boolean result = false; //第一种:List result = Arrays.asList(args).contains(str); //第二种:set Set<String> sets = new HashSet<String>(Arrays.asList(args)); result = sets.contains(str); //第三种:loop for (String s : args) { if (s.equals(str)){ return true; } } //第四种:binarySearch(Arrays的binarySearch方法必须应用于有序数组) int res = Arrays.binarySearch(args, str); if (res > 0){ return true; } return result;}
Arrays.binarySearch方法有局限性,必须应用于有序数组。建议使用循环来判断,效率高。
php中文网,大量的免费Java入门教程,欢迎在线学习!