Java 获取IP和MAC信息工具类
在Java开发中,有时候我们需要获取设备的IP地址和MAC地址信息。为了方便开发人员快速获取这些信息,可以使用一个工具类来实现这个功能。
获取IP和MAC信息工具类的设计思路
我们可以使用Java的网络编程和系统信息获取来实现获取IP和MAC信息的功能。具体来说,我们可以通过InetAddress
类来获取IP地址,通过NetworkInterface
类来获取MAC地址。
IP和MAC信息工具类的代码实现
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.UnknownHostException;
public class IpMacUtils {
public static String getIpAddress() {
try {
InetAddress inetAddress = InetAddress.getLocalHost();
return inetAddress.getHostAddress();
} catch (UnknownHostException e) {
e.printStackTrace();
return null;
}
}
public static String getMacAddress() {
try {
InetAddress inetAddress = InetAddress.getLocalHost();
NetworkInterface networkInterface = NetworkInterface.getByInetAddress(inetAddress);
byte[] mac = networkInterface.getHardwareAddress();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
sb.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : ""));
}
return sb.toString();
} catch (UnknownHostException | SocketException e) {
e.printStackTrace();
return null;
}
}
}
类图
classDiagram
class IpMacUtils {
+getIpAddress(): String
+getMacAddress(): String
}
使用示例
public class Main {
public static void main(String[] args) {
String ipAddress = IpMacUtils.getIpAddress();
String macAddress = IpMacUtils.getMacAddress();
System.out.println("IP地址:" + ipAddress);
System.out.println("MAC地址:" + macAddress);
}
}
总结
通过上述代码示例,我们可以看到如何使用Java编写一个简单的工具类来获取设备的IP地址和MAC地址信息。这样可以方便我们在开发中获取这些信息,用于需要的场景。希望本文对你有所帮助,谢谢阅读!