各位网友好,我刚学Java编程时间不长,最近编了一个客户/服务器的Socket通信程序:从客户端窗口的文本框tf中输入圆的半径,发送到服务器,服务器将计算结果传回到客户端窗口的编辑区的ta中。下面是客户端程序的一部分:
void toSrever(){
//怎样在这设一个循环,让客户端可能重复输入半径,并得到多次的计算结果?
try{
String s1;
String N=new String("服务器传回的计算结果:"+"\n");
String r=new String(tf.getText());
tf.setText(null);
  if(r.equals("bye"))
     SocketCloseing();
  outToServer.writeUTF(r);
  outToServer.flush();
 
s1=inFromServer.readUTF();
if(s1.equals("bye"))
     SocketCloseing();
ta.append(N+s1+"\n");
tf.grabFocus();
}
catch(IOException e1)
{  e1.getStackTrace();  }
  }
怎样让这段程序循环,多次输入半径并得到多次计算结果?服务器端程序每次计算传回结果后等待客户端上传半径(服务器端程序没有问题)。如果要看原程序,请回复,我上传。

解决方案 »

  1.   

    void toSrever(){
    //怎样在这设一个循环,让客户端可能重复输入半径,并得到多次的计算结果?
        while(true){
    try{
    String s1;
    String N=new String("服务器传回的计算结果:"+"\n");
    String r=new String(tf.getText());
    tf.setText(null);
      if(r.equals("bye"))
         SocketCloseing();
      outToServer.writeUTF(r);
      outToServer.flush();
     
    s1=inFromServer.readUTF();
    if(s1.equals("bye"))
         SocketCloseing();
    ta.append(N+s1+"\n");
    tf.grabFocus();
    }
    catch(IOException e1)
    {  e1.getStackTrace();  }
                  }
      }