如何在java中从对象数组中删除元素

如何在java中从对象数组中删除元素,java,arrays,class,methods,Java,Arrays,Class,Methods,在这个程序中,我收集了50个不同昵称和ip地址的昵称和ip地址 ip地址在其类(包括昵称)中被分成4个整数(x.y.z.m) 此方法将x和y与其余的进行比较,并将昵称记录到双字符串数组中。但是我不想在以后的循环中比较相同的本地网络(相同的x和y),所以我想删除相同的x和y。如何做到这一点?数组的大小是静态的,因此您无法轻松地从数组中删除元素。我强烈建议您使用列表类型(例如ArrayList)。在您的情况下,您可以只null数组中要忽略的位置(并确保您的代码跳过null条目)。但是,更一般地说,数

在这个程序中,我收集了50个不同昵称和ip地址的昵称和ip地址

ip地址在其类(包括昵称)中被分成4个整数(x.y.z.m)


此方法将x和y与其余的进行比较,并将昵称记录到双字符串数组中。但是我不想在以后的循环中比较相同的本地网络(相同的x和y),所以我想删除相同的x和y。如何做到这一点?

数组的大小是静态的,因此您无法轻松地从数组中删除元素。我强烈建议您使用
列表
类型(例如
ArrayList
)。

在您的情况下,您可以只
null
数组中要忽略的位置(并确保您的代码跳过null条目)。但是,更一般地说,数组并不是最好的数据结构

我不完全确定您想要做什么,听起来您想要一个在同一/16网络中具有IP地址的所有昵称的列表?在这种情况下,我将使用多重映射并使用前缀作为键。然后,您只需放置所有地址,然后获取每个地址的集合

Guava或Apache Commons Lang有这样的结构:


您能解释一下内for循环的用法吗?另外,“IPAddress”是什么类型?编辑并包含类IPAddress。而内部for循环实际上是无用的,谢谢你让我注意到@multi-threader两个建议:1。使用描述性变量名。2.使用
列表
。另一个建议:3。初始化
结果
数组。(这里有一个潜在的NullPointerException。)如何初始化“结果”@代码学徒如何从已为IPAddress类型的addr中创建列表类型?@ShacoNotFound404addrIPAddress[]类型,可以用List替换。