gpt4 book ai didi

java - java在指定范围之间连续循环

转载 作者:太空宇宙 更新时间:2023-11-04 11:05:11 24 4
gpt4 key购买 nike

我正在制作一个 Java 应用程序,它将循环遍历我的 DHCP 表并尝试连接到多个设备。我正在循环遍历 IP 范围,但希望连续循环遍历该范围,直到应用程序关闭。连续循环的最佳实践是什么?设置 startip 的值两次,然后设置startip一旦达到最大范围就回到原来的状态?以下是我目前拥有的:

public void loopFTP(String startIP, String endIP, int timeout) throws SocketException, IOException {
InetAddress startAsIP = InetAddresses.forString(startIP);
InetAddress endAsIP = InetAddresses.forString(endIP);
while(InetAddresses.coerceToInteger(startAsIP) <= InetAddresses.coerceToInteger(endAsIP)){
System.out.println(startAsIP);
attemptConnection(startAsIP, timeout);
startAsIP = InetAddresses.increment(startAsIP);

}
}

最佳答案

如果您的循环应该是无限的,您可以使用 for(;;)while(true) 循环。

到达范围末尾时,只需根据 startIP 值重置 startAsIP 即可:

public void loopFTP(String startIP, String endIP, int timeout) throws SocketException, IOException {
InetAddress startAsIP = InetAddresses.forString(startIP);
InetAddress endAsIP = InetAddresses.forString(endIP);
while(true){

System.out.println(startAsIP);
attemptConnection(startAsIP, timeout);

if(InetAddresses.coerceToInteger(startAsIP) <= InetAddresses.coerceToInteger(endAsIP))
startAsIP = InetAddresses.increment(startAsIP);
else
startAsIP = InetAddresses.forString(startIP);


}
}

关于java - java在指定范围之间连续循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46544093/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com