我在使用java中的套接字时遇到了客户端服务器程序的问题。所以我希望客户端发送字符串" chef",如果客户端发送" chef",我希望它在服务器中发回一些东西,否则做其他事情。问题是从客户端发送到服务器的字符串由于某些奇怪的原因而不匹配。 这是我在客户端类上发送的代码片段,用于发送字符串:
PrintStream PS=new PrintStream(sock.getOutputStream());
PS.println("chef");
在服务器中我有这个片段:
Socket sock=socket.accept();
InputStreamReader IR=new InputStreamReader(sock.getInputStream());
BufferedReader BR=new BufferedReader(IR);
String message="";
message=BR.readLine();
if (message=="chef")
{
PrintStream ps=new PrintStream(sock.getOutputStream());
ps.println("Chef Connected");
}
else
{
System.out.println(message);
}
所以问题是服务器继续使用else语句,即使我发送了正确的字符串" chef"。我在else中使用了System.out.println(message),它打印了字符串" chef"。所以我很遗憾为什么会这样。希望我很清楚,任何帮助或澄清将不胜感激。