Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何根据特定条件从java中的数组中删除对象?_Java_Arrays - Fatal编程技术网

如何根据特定条件从java中的数组中删除对象?

如何根据特定条件从java中的数组中删除对象?,java,arrays,Java,Arrays,:) 我有 它具有以下值: code[0] = 1234; code[1] = 2222; code[2] = 2121; code[3] = 4321; code[4] = 3333; code[5] = 2356; 本例中的代码是指文件的序列号。 假设用户输入文件的代码以删除该特定文件 假设用户输入3333作为要删除的代码。 代码[4]=3333将被删除,代码[5]=2356将向上移动以取代其位置。见下文 code[0] = 1234; code[1] = 2222; code[2] =

:) 我有

它具有以下值:

code[0] = 1234;
code[1] = 2222;
code[2] = 2121;
code[3] = 4321;
code[4] = 3333;
code[5] = 2356;
本例中的代码是指文件的序列号。 假设用户输入文件的代码以删除该特定文件

假设用户输入3333作为要删除的代码。 代码[4]=3333将被删除,代码[5]=2356将向上移动以取代其位置。见下文

code[0] = 1234;
code[1] = 2222;
code[2] = 2121;
code[3] = 4321;
code[4] = 2356;
我将如何解决这个问题

我读到使用数组列表会让我的生活更轻松。
但是,我被告知只使用数组。
有什么帮助吗?:)

这根本不可能。数组的大小是固定的,因此必须创建第二个数组,将其大小减小1,并复制除要保留的值以外的所有值。或者单独跟踪数组的“工作大小”,此时您开始重新实现
ArrayList

您可以简单地将值设置为不可能的值(如
-1
以避免使用
System.arrayCopy
或类似工具四处移动和调整阵列的麻烦。当然,这是假设目标是使功能正常工作。如果“移动”元素是绝对必要的,则必须按照此处另一条注释所述创建新阵列

我将如何解决这个问题

分配一个新数组,并将要保留的所有值从现有数组复制到新数组

您还可以就地更新数组,用一些不能成为合法代码的特殊值填充数组末尾的“洞”


因为这是一个“听起来像是家庭作业”的问题,所以我将让您自己去思考如何编写它。(它非常简单。只需一个循环、一个测试,以及对第二个索引的一些仔细操作。)

“我被告知只需使用数组”,听起来像是家庭作业吗?可能重复的可能重复的可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的,可能重复的
code[0] = 1234;
code[1] = 2222;
code[2] = 2121;
code[3] = 4321;
code[4] = 2356;