我知道这一定是一个简单的问题。但我找不到任何解决方案。我有一个消息数组;
Message[] messages;
它有 9 项,我想在单击按钮时删除其中一项。但我找不到任何删除或删除功能。
我想做的是:
messages[1].remove;
或者
messages.remove(1);
然后我的数组有 8 个项目。我正在开发 Eclipse-Android。
public static Message[] removeFromArray(Message[] array, int index)
{
int length = array.length;
if(index < 0 || index >= length) return array;
Message temp = new Message[length - 1];
int counter = 0;
for(int i = 0; i < length; i++)
{
if(i == index) continue;
temp[counter++] = array[i];
}
return temp;
}
// ...
Message[] messages = getMessageArraySomeHow();
messages = removeFromArray(messages, 1);
您可以为消息使用 ArrayList 而不是数组吗?在这种情况下,您可以使用ArrayList.remove(index)方法。
前任:
ArrayList<Message> messages = new ArrayList<Message>();
messages.remove(1);
如果默认情况下不能使用 Arraylist,
ArrayList<Message> messageList = new ArrayList(Arrays.asList(messages));
messageList.remove(1);