你map里面没有放值啊,所以你的map的size=0,当然就没有值了,而且map的get不是用数字的,应该是用key
你的key是它的地址InetAddress.
只有list可以get下标,map和set都不可以的。
Socket socket = serverSocket.accept();
if(null != socket && !socket.isClosed()){
// 以下用于实验
ListUtil listUtil = new ListUtil();
//处理接受的数据
Thread t1 = new Thread(new SocketOperate(socket));
// 以下为实验代码
InetAddress clientIp = socket.getInetAddress();
if(clientIp!=null||!clientIp.equals("")) {
listUtil.addMap(clientIp, socket);
}
t1.start();
}else{
break;
}
get参数是key值,不是索引
先看map是不是空,以后就好找原因了
map get 有两种情况获取的value是null,map没有元素或者map中没有对应的key