OutputStream output_stream = socket.getOutputStream();
output_stream.write("HELLO".getBytes());
InputStream input = socket.getInputStream();
InputStreamReader isreader = new InputStreamReader(input);
BufferedReader reader = new BufferedReader(isreader);
String input_string = reader.readLine(); if (input_string == "TEST"){
output_stream.write("YES".getBytes());
}else{
output_stream.write("NO".getBytes());
}
output_stream.write("CLOSE".getBytes()); 代码如上,如果去除中间的if判断,程序就没问题,不然就阻塞在if这里,也不执行下面的代码,请问为什么呢??
output_stream.write("HELLO".getBytes());
InputStream input = socket.getInputStream();
InputStreamReader isreader = new InputStreamReader(input);
BufferedReader reader = new BufferedReader(isreader);
String input_string = reader.readLine(); if (input_string == "TEST"){
output_stream.write("YES".getBytes());
}else{
output_stream.write("NO".getBytes());
}
output_stream.write("CLOSE".getBytes()); 代码如上,如果去除中间的if判断,程序就没问题,不然就阻塞在if这里,也不执行下面的代码,请问为什么呢??
没加回车,不过if (input_string == "TEST"),不是true / false两种情况都考虑到了吗?
是指while (true)吗?不太会用,能改个实例给我看看吗?
可能因为你下面没用到input_string编译器给优化了,你试试System.out.println(input_string) 用一下input_string也会死