Java 定义DataOutputStream和DataInputStream变量时出现问题
出于某种原因,我在使用out、in和inUTF变量时遇到问题。 我尝试在不同的地方定义它们,并以不同的方式使用它们,但我似乎找不到解决方案。这是我的密码Java 定义DataOutputStream和DataInputStream变量时出现问题,java,networking,Java,Networking,出于某种原因,我在使用out、in和inUTF变量时遇到问题。 我尝试在不同的地方定义它们,并以不同的方式使用它们,但我似乎找不到解决方案。这是我的密码 public class Server { static ServerSocket serverSocket; static Socket socket; static DataOutputStream out; static DataInputStream in; static boolean running = false; stati
public class Server {
static ServerSocket serverSocket;
static Socket socket;
static DataOutputStream out;
static DataInputStream in;
static boolean running = false;
static int playerX;
static int playerY;
static int playerZ;
static String[] arrayX;
static String[] arrayY;
static String[] arrayZ;
static String inUTF;
public static void main(String args[]) throws Exception {
running = true;
System.out.println("Starting server");
serverSocket = new ServerSocket(7877);
System.out.println("Finished");
out = new DataOutputStream(socket.getOutputStream());
in = new DataInputStream(socket.getInputStream());
inUTF = in.readUTF();
while (running) {
tick();
}
}
public static void tick() {
try {
try {
socket = serverSocket.accept();
} catch (Exception e) {
System.out.println("Something went wrong in the tick() loop: Could not accept client connection");
}
if (inUTF.startsWith("X")) {
arrayX = inUTF.split(":");
playerX = Integer.parseInt(arrayX[1]);
out.writeUTF("X:" + playerX);
} else if (inUTF.startsWith("Y")) {
arrayY = inUTF.split(":");
playerY = Integer.parseInt(arrayY[1]);
out.writeUTF("Y:" + playerY);
} else if (inUTF.startsWith("Z")) {
arrayZ = inUTF.split(":");
playerZ = Integer.parseInt(arrayZ[1]);
out.writeUTF("Z:" + playerZ);
} else {
System.out.println("Something went wrong in the tick() loop: Did not receive a player position");
}
} catch (Exception e) {
System.out.println("Something went wrong in the tick() loop");
}
}
socket
尚未初始化,因此此socket.getOutputStream()
将失败。顺便说一句,我无法理解您想要的逻辑非常感谢,我对Java编程非常陌生,几个小时来我一直在寻找解决方案。我正在制作一个多人游戏,我只是试图将信息从服务器发送到客户端。如果这是服务器
,那么你不需要套接字
,只需要服务器套接字