System.out.println(">>>等待发送消息..."); while(true) { if(!Client.tosend) { if(n==0) { System.out.println(">>>编辑中..."); } } else { String str = Client.areaText.getText(); Client.areaText.setText(""); Client.tosend=false; if(str!="") { PrintWriter out = new PrintWriter(socket.getOutputStream());//输出流 out.println(str); out.flush(); System.out.println(">>>发送成功!"); } } n++; }如何不输出第一个if中的内容而只执行else中的内容
时间: 2024-01-17 22:03:40 浏览: 69
chinaMap,java项目开发源码,java中system.out.println()源码分析
要实现不输出第一个if中的内容而只执行else中的内容,可以使用一个布尔变量来作为条件控制while循环。具体来说,可以将第一个if条件中的内容移动到while循环外部,然后在while循环中根据布尔变量的取值来判断是否执行if条件中的内容。修改后的代码如下:
```
System.out.println(">>>等待发送消息...");
boolean isEditing = true; // 编辑状态标记
while(true) {
if(!Client.tosend) {
if(isEditing) {
System.out.println(">>>编辑中...");
isEditing = false;
}
}
else {
String str = Client.areaText.getText();
Client.areaText.setText("");
Client.tosend=false;
if(str!="") {
PrintWriter out = new PrintWriter(socket.getOutputStream());//输出流
out.println(str);
out.flush();
System.out.println(">>>发送成功!");
}
isEditing = true;
}
}
```
这样,当isEditing为true时,只会执行if条件外的代码,当isEditing为false时,只会执行if条件中的内容。同时,每当发送消息时,将isEditing重新置为true,以便下一次循环时执行if条件外的代码。
阅读全文