问题
今天做Java广播,
packet.getSocketAddress();
报错:
Exception in thread "main" java.lang.IllegalArgumentException: port out of range:-1
原来问题是在
socket.receive(packet);
之前调用了
packet.getSocketAddress();
这时候socket还没有收到广播信息,所以不能取到数据。
解决方法
将这句放到
socket.receive(packet); packet.getSocketAddress();
后面就可以了。