首页  >  文章  >  Java  >  Java中的nextLine().split("[\\s]")是什么意思?

Java中的nextLine().split("[\\s]")是什么意思?

WBOY
WBOY转载
2023-05-08 14:40:081234浏览

    nextLine().split(“[\\s]“)的意思

    Scanner sc = new Scanner(System.in);
    String[] a = sc.nextLine().split("[\\s]");

    这句话的意思是,把输入的字符串以“[\\s]”为条件分割成一个String数组。

    \\s表示空格,回车,换行等空白符

    当然,单表示空格的话,也可以直接用空格即

    Scanner sc = new Scanner(System.in);
    String[] a = sc.nextLine().split(" "); //此处有个空格

    split("\\s+") 和 split(" +")

    public String[] split(String regex)根据给定的正则表达式的匹配来拆分此字符串。

    然后就要明确正则表达式的含义了:

    • \\s表示空格,回车,换行等空白符

    • +号表示一个或多个的意思

    .split(“,“, -1) 和 .split(“,“) 的区别

    区别只有一个

    1、当字符串最后一位有值时,两者没有区别

    2、当字符串最后一位 或者 N位是分隔符时,前者不会继续切分,而后者继续切分。即前者不保留null值,后者保留。

    举例:

    import java.util.*;
    
    public class Main {
        public static void main(String[] args){
            Scanner sc=new Scanner(System.in);
            while(sc.hasNext()){
                int sum = 0;
                String s = sc.nextLine();
                String[] str =  s.split("\\.",-1);
                for(int i=0; i<str.length; i++){
                    System.out.println(str[i]);
                }
            }
        }
    }

    输入:

    河南..河北.

    如果是 split(“\.”,-1), 则输出:

    Java中nextLine().split(“[\\s]“)的意思是什么

    如果是如果是 split(“\.”), 输出:

    Java中nextLine().split(“[\\s]“)的意思是什么

    注意,在中间的空字符串不会被忽略 注意,需要转义(\)的字符 有:" | " ^ " * " . " + " 注意: " , " 不需要转义 

    以上是Java中的nextLine().split("[\\s]")是什么意思?的详细内容。更多信息请关注PHP中文网其他相关文章!

    声明:
    本文转载于:yisu.com。如有侵权,请联系admin@php.cn删除