string有一个indexOf,同样,在数组里,也有此方法。
public static boolean isExist(String[] strs,String s){
for(int i=0;i<strs.length;i++){
if(strs[i].indexOf(s)!=-1){//循环查找字符串数组中的每个字符串中是否包含所有查找的内容
return true;//查找到了就返回真,不在继续查询
}
}
return false;//没找到返回false
}
indexOf :判断数组是否存在某元素,存在返回下标值,不存在,则返回-1.
延申下,如果想把数组转成list,调用add()、remove() 方法
String str[] = {"a","b","c","d","e"};
List<String> list1=Arrays.asList(str);//将数组转换为list
这样会报错,原因:调用Arrays.asList()生产的List的add、remove方法时报异常,这是由Arrays.asList() 返回的市Arrays的内部类ArrayList, 而不是java.util.ArrayList。Arrays的内部类ArrayList和java.util.ArrayList都是继承AbstractList,remove、add等方法AbstractList中是默认throw UnsupportedOperationException而且不作任何操作。java.util.ArrayList重写了这些方法而Arrays的内部类ArrayList没有,所以会抛出异常。
正确的写法:
String str[] = {"a","b","c","d","e"};
List<String> list1=Arrays.asList(str);//将数组转换为list
List<String> arrList = new ArrayList<String>(list1);
arrList.remove("a");