[英]How can I convert a string with integers to array with integers in java?
[英]How to convert an IP string to an array of integers in java?
我正在尝试从Java中的IP字符串制作一个整数数组。 例如:
String ip = "192.168.0.1";
int[] ipArray = new int[4];
int[0] = 192; int[1] = 168; int[2] = 0; int[3] = 1;
知道我该怎么做吗?
我知道parseInt工具,但是如何使用“。”。 ?
抱歉,菜鸟问题,我仍然是初学者。
用分割字符串.
标志。 使用Java 8 Streams的解决方案:
int[] ipArray = Arrays.stream(ip.split("\\."))
.mapToInt(Integer::valueOf)
.toArray();
编辑
Integer::parseInt
,因为它返回原始的也许是更好地在这里int
而不是Integer
像Integer::valueOf
一样。 因此,为了避免不必要的拆箱:
int[] ipArray = Arrays.stream(ip.split("\\."))
.mapToInt(Integer::parseInt)
.toArray();
您可以使用String.split()方法。
例如:
String str = "192.168.0.1";
String[] strSplit = str.split("\\.");
int[] intArray = new int[strSplit.length];
for(int i=0; i<intArray.length; i++){
intArray[i] = Integer.parseInt(strSplit[i]);
}
\\\\.
的原因\\\\.
是因为.
是Java Regex Engine中的特殊字符。 否则,如果使用括号将字符串分割开,则str.split("-")
就足够了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.