2 san8250 san8250 于 2017.04.21 19:55 提问

java字符串截取的问题

我获取了一个字符串,比如说是“2|3| | |“,用”|“截取后只能获得2和3两个数据,怎么才能去到包括空值在内的所有数据,使数组的长度符合预期啊,谢谢大神了

8个回答

qq_34108067
qq_34108067   2017.04.21 20:37
已采纳
    String a = "1|2|||";
        StringTokenizer st = new StringTokenizer(a, "|");
        while(st.hasMoreTokens()){
            System.out.println(st.nextToken());
        }

附上代码,亲测有效

qq_33519530
qq_33519530   2017.04.21 20:09

怎么才能去到包括空值在内的所有数据,使数组的长度符合预期 没懂,什么空值

qq_34108067
qq_34108067   2017.04.21 20:32

StringTokenizer你去看看这个类的用法吧

baij1230
baij1230   2017.04.21 21:05

把空格截取的String.split(" | ")的空格去掉试试

HcJsJqJSSM
HcJsJqJSSM   2017.04.21 22:16

建议你在使用字符串截取的方法时写成split(" | ");这样就可以了吧。

pigdreams
pigdreams   2017.04.21 23:48

最简单的方法用split(),只不过里面多放一个参数,split("|",-3),-3代表多切割两次
默认情况下split("|")其实第二个参数是0,这个参数是指代表切割的次数,
在默认情况为0时,如果最后一位切割出来是空字符的话,那么切割出的数组将不包含这个空字符,所以你只得到2和3