这可能是一个非常简单的问题,但我将首先给您代码。
import java.util.Scanner;
public class help {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
System.out.print("Give: ");
String s = sc.next();
String[] parts = s.split(".");
System.out.println(parts.length);
}
}
即使我给出 192.168.1.1.1.1.1 或 1.2.3 或 ... parts.length 将始终为 0,有人可以向我解释为什么以及如何在我输入 1.2 时让它为 4 .3.4?
最佳答案
您需要 s.split("\\.")
因为 split
的参数是正则表达式。正则表达式中的 .
字符表示“任何字符”,您需要使用反斜杠对其进行转义,使其表示“点”。
关于java - 如果我分割这个字符串,为什么我的 string.length 是 0 ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23818325/