Java填坑之路 2019-06-25
被意外之事干扰了,累死了,但感觉挺好
这篇笔记还需要进一步优化。
package test;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class Demo2_receive {
public static void main(String[] args) throws IOException {
DatagramSocket socket = new DatagramSocket(6666); //创建码头
DatagramPacket packet = new DatagramPacket(new byte[1024],1024); //创建集装箱rue
while(true) {
socket.receive(packet);//接货,接收数据
byte[] arr = packet.getData();
int len = packet.getLength();
String ip = packet.getAddress().getHostAddress();
int port = packet.getPort();
System.out.println(ip + ":" + port + ":" + new String(arr,0,len));
}
}
}package test;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;
public class Demo1_send {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
DatagramSocket socket = new DatagramSocket();//创建码头
while(true) {
String line = sc.nextLine();
if("quit".equals(line)) {
break;
}
DatagramPacket packet =
new DatagramPacket(line.getBytes(),line.getBytes().length,InetAddress.getByName("127.0.0.1"),6666);//创建集装箱,将数据装进去
socket.send(packet);//从码头中将集装箱发出去
}
socket.close();//关闭码头(底层是IO流)
}
}package test;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;
import java.util.Scanner;
public class Demo5 {
public static void main(String[] args) {
new Receive().start();
new Send().start();
}
}
class Receive extends Thread {
public void run(){
try {
DatagramSocket socket = new DatagramSocket(6667);
DatagramPacket packet = new DatagramPacket(new byte[1024],1024);
while(true) {
socket.receive(packet);
byte[] arr = packet.getData();
int len = packet.getLength();
String ip = packet.getAddress().getHostAddress();
int port = packet.getPort();
System.out.println(ip + ":" + port + ":" + new String(arr,0,len));
}
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class Send extends Thread {
public void run() {
try {
Scanner sc = new Scanner(System.in);
DatagramSocket socket = new DatagramSocket();
while(true) {
String line = sc.nextLine();
if("quit".equals(line)) {
break;
}
DatagramPacket packet =
new DatagramPacket(line.getBytes(),line.getBytes().length,InetAddress.getByName("127.0.0.1"),6667);
socket.send(packet);
}
socket.close();
} catch (SocketException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}留坑待填
客户端
服务端
留坑待填
留坑待填
留坑待填
留坑待填
叨逼叨两句收拾收拾~18-11:Collection中的常见方法sortpackage com.test.demo001;System.out.println; //根据默认排序结果获取集合中的最大值