java如何删除掉数组中的某个元素??

比如一个数组:String arrays={"1","2","3","5",“6”};
for(String s:arrays){
if(s.equals("2")){
//移除掉元素2

}

}

String str = dianjia2,wang,dianjia;
String str1 = dianjia2,dianjia;
如上面两个字符串,如何根据str1的字段来删除str中相同的字段,最后得到的结果是wang.
解决代码:
public static void main(String[] args){
String[] a = new String[]{"1","5","3","7"};
String[] b = new String[]{"2","3","4"};
String[] arrResult = arrContrast(a, b);
for (String strResult : arrResult) {
System.out.println("最后的结果:----------->" + strResult);
}
}

//处理数组字符
private static String[] arrContrast(String[] arr1, String[] arr2){
List<String> list = new LinkedList<String>();
for (String str : arr1) { //处理第一个数组,list里面的值为1,2,3,4
if (!list.contains(str)) {
list.add(str);
}
}
for (String str : arr2) { //如果第二个数组存在和第一个数组相同的值,就删除
if(list.contains(str)){
list.remove(str);
}
}
String[] result = {}; //创建空数组
return list.toArray(result); //List to Array
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-05-17
String[] arrays={"1","2","3","5","6"};
String[] tempArr = new String[arrays.length];
int i = 0;
for(String s:arrays){
if(!s.equals("2")){
tempArr[i] = s;
i++;
}
}
for(int j = 0; j < tempArr.length; j++) {
System.out.println(tempArr[j]);
}

// 数组本身是不可以移除元素的 但可以通过中间变量来实现数组的移除本回答被网友采纳
第2个回答  2013-10-12
数组是不可以进行删除的
你可以转换成为 ArrayList 然后进行删除 然后再返回一个数组
第3个回答  2013-10-12
设成null,从后往前移一位
第4个回答  推荐于2017-09-13
public static void main(String[] args) {
String[] arrays={"1","2","3","5","6"};
for (int i = 0; i < arrays.length; i++) {
if("2".equals(arrays[i])){
//移除掉元素2
for (int j = i+1; j < arrays.length; j++) {
arrays[i]=arrays[j];
}

}
}
}本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网