-3

Java で奇妙な問題が発生しました (解決済み)。そこで何が起こっているのか気になったので質問します。

次の違いは何ですか:

if(Transfers.protoSendLong(output, date.getTime())){}

そして単純に

Transfers.protoSendLong(output, date.getTime());

私が見る違いは、1番目は機能し、2番目は機能しないということです:S 実行に違いはありますか?

protoSendLong() が何に答えようとしているのかを知る必要はないと思います。必要な場合は、お尋ねください。


編集:

ここにメソッドのコードがあります。それが私があなたにできる最大のことです。

public static boolean protoSendLong(ObjectOutputStream output, long x) {
    boolean r = false;

    try {
        output.writeLong(x);

        r = true;
    } catch (IOException ex) {
        Logger.getLogger(Transfers.class.getName()).log(Level.SEVERE, null, ex);
    }

    return r;

}

4

2 に答える 2

2

メソッドの呼び出しに関して、2 つのスニペットに違いはありません。どちらの場合でも呼び出されます。メソッドが何らかのケースで期待どおりに動作しない場合、このスニペットとは何の関係もありません。

于 2013-10-24T11:24:46.040 に答える