Java截取IP的前三段

流程图

flowchart TD
    A[开始] --> B[获取IP地址]
    B --> C[截取IP的前三段]
    C --> D[返回截取结果]
    D --> E[结束]

文章

1. 获取IP地址

获取IP地址是截取IP的前三段的前提。在Java中,可以使用InetAddress类来获取当前主机的IP地址。具体步骤如下所示:

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Main {
    public static void main(String[] args) {
        try {
            // 获取本机的InetAddress实例
            InetAddress inetAddress = InetAddress.getLocalHost();
            
            // 获取IP地址字符串
            String ip = inetAddress.getHostAddress();
            
            System.out.println("IP地址: " + ip);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}

在以上代码中,我们首先通过InetAddress.getLocalHost()方法获取本机的InetAddress实例。然后,通过getHostAddress()方法获取IP地址的字符串表示。最后,打印出获取的IP地址。

2. 截取IP的前三段

在获取到IP地址后,我们需要对其进行截取操作,只保留前三段。可以通过使用String类的split()方法来实现。具体步骤如下所示:

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Main {
    public static void main(String[] args) {
        try {
            // 获取本机的InetAddress实例
            InetAddress inetAddress = InetAddress.getLocalHost();
            
            // 获取IP地址字符串
            String ip = inetAddress.getHostAddress();
            
            // 截取IP的前三段
            String[] ipSections = ip.split("\\.");
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < 3; i++) {
                sb.append(ipSections[i]).append(".");
            }
            sb.deleteCharAt(sb.length() - 1);
            String truncatedIp = sb.toString();
            
            System.out.println("截取前三段IP地址: " + truncatedIp);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}

在以上代码中,我们首先通过split()方法将IP地址字符串按照.进行拆分,得到一个字符串数组。然后,使用StringBuilder类来拼接前三段IP地址,并删除最后一个多余的.。最后,使用toString()方法将StringBuilder对象转换为字符串,并打印出截取的前三段IP地址。

完整代码

import java.net.InetAddress;
import java.net.UnknownHostException;

public class Main {
    public static void main(String[] args) {
        try {
            // 获取本机的InetAddress实例
            InetAddress inetAddress = InetAddress.getLocalHost();
            
            // 获取IP地址字符串
            String ip = inetAddress.getHostAddress();
            
            // 截取IP的前三段
            String[] ipSections = ip.split("\\.");
            StringBuilder sb = new StringBuilder();
            for (int i = 0; i < 3; i++) {
                sb.append(ipSections[i]).append(".");
            }
            sb.deleteCharAt(sb.length() - 1);
            String truncatedIp = sb.toString();
            
            System.out.println("截取前三段IP地址: " + truncatedIp);
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}

以上代码包含了获取IP地址和截取前三段IP地址的完整过程。你可以直接运行该代码,查看结果。

希望以上内容对你有所帮助,在开发过程中如果还有任何问题,欢迎随时向我提问。祝你在编程学习中取得进步!