Java可以使用Socket來實(shí)現(xiàn)實(shí)時(shí)接收數(shù)據(jù)。Socket是一種網(wǎng)絡(luò)通信協(xié)議,可以在不同主機(jī)之間傳輸數(shù)據(jù)。
以下是一個(gè)簡(jiǎn)單的示例代碼,演示了Java如何實(shí)時(shí)接收數(shù)據(jù):
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class RealTimeDataReceiver {
public static void main(String[] args) {
try {
// 創(chuàng)建ServerSocket對(duì)象,并指定監(jiān)聽的端口號(hào)
ServerSocket serverSocket = new ServerSocket(8888);
// 等待客戶端的連接
Socket clientSocket = serverSocket.accept();
// 創(chuàng)建BufferedReader對(duì)象,用于讀取客戶端發(fā)送的數(shù)據(jù)
BufferedReader reader = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String line;
// 循環(huán)讀取客戶端發(fā)送的數(shù)據(jù)
while ((line = reader.readLine()) != null) {
System.out.println("Received data: " + line);
}
// 關(guān)閉資源
reader.close();
clientSocket.close();
serverSocket.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
以上代碼創(chuàng)建了一個(gè)ServerSocket對(duì)象,并監(jiān)聽8888端口。在接收到客戶端連接后,通過創(chuàng)建BufferedReader對(duì)象來讀取客戶端發(fā)送的數(shù)據(jù)。使用while循環(huán)來實(shí)現(xiàn)持續(xù)接收數(shù)據(jù)的功能。
注意:以上代碼只是一個(gè)簡(jiǎn)單的示例,實(shí)際應(yīng)用中可能需要根據(jù)需求進(jìn)行相應(yīng)的修改和優(yōu)化。