代码演示了UDP协议的收发,UDP协议不保证所有发送的包都按照顺序到达接收端,但是优点是它的效率要比TCP高。
把Send设置为true,编译出来的是不停发送“Hello 加油!”的发送端的代码
设置为false,编译出来的是不停接收数据的代码 10.0.1.35是本机的IP
public class Main {
final static boolean Send = false;
public static void main(String[] args) throws IOException {
while(true)
if( Send == true) {
DatagramSocket datagramSocket = new DatagramSocket();
byte[] bytes = "Hello 加油!".getBytes();
InetAddress inetAddress = InetAddress.getByName("10.0.1.35");
DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length, inetAddress, 2046);
datagramSocket.send(datagramPacket);
datagramSocket.close();
}
else
{
DatagramSocket datagramSocket = new DatagramSocket(2046);
byte[] bytes = new byte[30];
DatagramPacket datagramPacket = new DatagramPacket(bytes, bytes.length);
datagramSocket.receive(datagramPacket);
datagramSocket.close();
System.out.println(new String(datagramPacket.getData(),0,datagramPacket.getLength()));
}
}
}