我有一个如下所示的数组:
PersonClass[] person= {
new PersonClass("90234234434", "John", "Smith", 22, "Street 22/5", 10//this is priority from 0 up to 10),
...
...
};
然后我搜索以 98 开头的安全 ID
for(int n = 0; n < person.length; n++)
{
if(person[n].getSecId().contains("98"))
{
System.out.println(person[n].toString());s
//delete this object from person array
}
}
现在我的问题是:我可以直接从数组中删除这个对象吗?如果不是,我如何将它转换为集合,例如。数组列表。
最佳答案
如果您使用的是 Java 8,您可以使用:
person = Arrays.stream(person)
.filter(p -> !p.getSecId().startsWith("98")) // note the not ! here
.toArray(PersonClass[]::new);
另一件事:
Then I search for security ID that starts from 98
在这种情况下,您可以将 contains 替换为 startsWith
以仅检查第一个字符。
关于java - 直接从Array中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54615895/