Java - 从 ArrayList 中删除最后一个已知项 [英] Java - remove last known item from ArrayList
本文介绍了Java - 从 ArrayList 中删除最后一个已知项的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
好的,这是我的ArrayList
:
private List<ClientThread> clients = new ArrayList<ClientThread>();
这是我想要做的:
我正在尝试从上面发布的 ArrayList
中删除最后一个已知项目.我正在尝试使用以下代码执行此操作:
and here is what I am trying to do:
I am trying to remove the last known item from the ArrayList
I posted above. I'm trying to do this with the code below:
} catch(SocketException re) {
String hey = clients.get(clients.size());
ClientThread.remove(hey);
System.out.println(hey + " has logged out.");
System.out.println("CONNECTED PLAYERS: " + clients.size());
}
但我收到此错误:
C:\wamp\www\mystikrpg\Server.java:147: incompatible types
found : Server.ClientThread
required: java.lang.String
String hey = clients.get(clients.size());
^
C:\wamp\www\mystikrpg\Server.java:148: cannot find symbol
symbol : method remove(java.lang.String)
location: class Server.ClientThread
ClientThread.remove(hey);
^
2 errors
我做错了什么?它应该从我的 ArrayList
中删除最后一个已知项目.
What am I doing wrong?
It's supposed to remove the last known item from my ArrayList
.
推荐答案
应该是:
ClientThread hey = clients.get(clients.size() - 1);
clients.remove(hey);
或者你可以这样做
clients.remove(clients.size() - 1);
减号是因为 size() 返回的是元素个数,但是 ArrayList 的第一个元素的索引是 0 而不是 1.
The minus ones are because size() returns the number of elements, but the ArrayList's first element's index is 0 and not 1.
这篇关于Java - 从 ArrayList 中删除最后一个已知项的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文