Java中的向量removeIf()方法
Vector 的removeIf()方法从Vector中删除所有满足作为参数传递给该方法的条件的元素。如果从 Vector 中删除了某些元素,则此方法返回 true。
Java 8 有一个重要的内置函数接口,即 Predicate。谓词或条件检查函数,它检查给定输入的给定条件,并返回一个布尔结果,指示是否满足条件。
句法:
public boolean removeIf(Predicate super E> filter)
参数:此方法采用一个参数过滤器,该过滤器表示一个谓词,该谓词对于要删除的元素返回 true。
返回:如果谓词返回 true 并且删除了某些元素,则此方法返回True 。
异常:如果指定的过滤器为空,此方法将抛出NullPointerException 。
下面的程序说明了 Vector 的 removeIf() 方法:
示例 1:演示包含一组数字的向量的 removeIf() 方法,并且仅删除可被 2 整除的数字。
// Java Program Demonstrate removeIf()
// method of Vector
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create an Vector which going to
// contains a list of Numbers
Vector Numbers = new Vector();
// Add Number to list
Numbers.add(22);
Numbers.add(33);
Numbers.add(55);
Numbers.add(62);
// apply removeIf() method
// to remove numbers divisible by 2
Numbers.removeIf(n -> (n % 2 == 0));
System.out.println("All Numbers not divisible by 2 are:");
// print list
for (int i : Numbers) {
System.out.println(i);
}
}
}
输出:
All Numbers not divisible by 2 are:
33
55
示例 2:演示包含一组学生姓名的 Vector 上的 removeIf() 方法,并删除所有 4 个字符长的姓名。
// Java Program Demonstrate removeIf()
// method of Vector
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create a Vector
// containing a list of string values
Vector students = new Vector();
// Add Strings to list
// each string represents student name
students.add("Rama");
students.add("Mohan");
students.add("Sohan");
students.add("Rabi");
students.add("Shabbir");
// apply removeIf() method
// to remove names contains 4 chars
students.removeIf(n -> (n.length() == 4));
System.out.println("Students name do not contain 4 char are");
// print list
for (String str : students) {
System.out.println(str);
}
}
}
输出:
Students name do not contain 4 char are
Mohan
Sohan
Shabbir
示例 3:演示 Vector 的 removeIf() 方法中的 NullpointerException。
// Java Program Demonstrate removeIf()
// method of Vector
import java.util.*;
public class GFG {
public static void main(String[] args)
{
// create a Vector
// containing a list of string values
Vector students = new Vector();
// Add Strings to list
// each string represents student name
students.add("Rama");
students.add("Mohan");
students.add("Sohan");
students.add("Rabi");
students.add("Shabbir");
try {
// apply removeIf() method with null filter
students.removeIf(null);
}
catch (Exception e) {
System.out.println("Exception: " + e);
}
}
}
输出:
Exception: java.lang.NullPointerException
参考: https: Java/util/Vector.html#removeIf-java.util。函数.谓词-