0

私は最もランダムな問題を抱えています。簡単に言えば、特定の条件が満たされるまでwhileループを繰り返し、満たされない場合は明らかにループの後のコードを実行する必要があります。何らかの理由で while ループの後のコードが実行されません... これが私のコードです:

while (true) 
        {
            Socket ClientSocketConnection = serverSocket.accept();
            System.err.println("We have established a connection with a client!");
            System.out.println(" ");

            ServerInput = new BufferedReader(new InputStreamReader(ClientSocketConnection.getInputStream()));
            ServerOutput = new DataOutputStream(ClientSocketConnection.getOutputStream());

            while((StringInput = ServerInput.read()) != -1)
            {
              //Things get done here

            }

            //methodBeingUsed is a string here

            switch (methodBeingUsed){
                case "GET":
                    GET();
                    break;
                case "POST":
                    POST(sBuffer.toString());
                    break;
            }

            System.err.println("The Connection will now Terminated!");
            ServerOutput.close();
            ServerInput.close();
            ClientSocketConnection.close();
        }
    }

基本的に、なんらかの理由で switch ステートメントが実行されていませんか?? コードをデバッグすると、ServerInput変数から最後の -1 に到達すると、コードが停止します。while(true)停止し、ループ内の他のすべてを続行しません。なぜこれが起こっているのか本当にわかりません...

4

1 に答える 1