- ベストアンサー
戻り値の返し方
java eclipseを使ってプログラミングを勉強しています。 通信のプログラムを作っているのですが、 データをwrite()メソッドやread()メソッドを使って 送受信するのですが、それらのメソッドが正常に動いたかの 確認をする必要があると考えました。 そのためには、戻り値を確認すればよいことが分かりました。 初歩的な質問で申し訳ないですが、どうやって戻り値を 確認すればよいでしょうか? アドバイスをお願いします。
- みんなの回答 (3)
- 専門家の回答
java eclipseを使ってプログラミングを勉強しています。 通信のプログラムを作っているのですが、 データをwrite()メソッドやread()メソッドを使って 送受信するのですが、それらのメソッドが正常に動いたかの 確認をする必要があると考えました。 そのためには、戻り値を確認すればよいことが分かりました。 初歩的な質問で申し訳ないですが、どうやって戻り値を 確認すればよいでしょうか? アドバイスをお願いします。
お礼
回答ありがとうございます。 具体的に書きます。 for (int i = 0; i < data-2; i++) { out.write(i); } out.write('\\'); out.write('s'); out.flush(); out.write('\\'); out.write('q'); out.flush(); という処理を行うのですが、本当にdata-2が書き込まれて送信されたのか、 また、 while ((ch = in.read()) != -1) { if (stat == STATUS_RST) { startNs = System.nanoTime(); stat = STATUS_RCV; } if (stat == STATUS_RCV && ch == '\\') { stat = STATUS_CMD; } else if (stat == STATUS_CMD) { if (ch == 's') { long Ns = System.nanoTime() - startNs; long Micros = Ns / 1000; out.println(Micros); System.out.println("計測時間:" + Micros + " (マイクロ秒)"); stat = STATUS_RST; } else if (ch == 'q') { break; } else { stat = STATUS_RCV; } } } この処理で本当に送信されたバイト数が受信されたのかを 戻り値を使って確認したいのです。 >read()の戻り値は「読み込まれた文字数」をintで返します。 >ストリームの終端に達し、読み込める文字がなくなった場合「-1」を返します。 ということは、戻り値をチェックすれば、現在何バイト読み込んだかが 確認できるということでしょうか?