8

Java アプリケーションで空きポートを見つける必要があります。以下のコードが機能しないのはなぜですか? 常に 0 を返します。

public int findFreePort() {
    int portNumber = new InetSocketAddress(0).getPort();
    return portNumber;
}

の Java doc は次のようにnew InetSocketAddress()述べています。

IP アドレスがワイルドカード アドレスで、ポート番号が指定された値であるソケット アドレスを作成します。

有効なポート値は 0 ~ 65535 です。ポート番号が 0 の場合、システムはバインド操作で一時ポートを取得できます。

4

2 に答える 2