我只是想将一个字符串分成两个较小的字符串。看起来这很容易,但由于某种原因我无法弄清楚。我试图拆分的一个例子是:
AA
BB
DD
FF
TT
EE
SE
GR
这些值当前位于 ArrayList 中,我希望将它们拆分为两个数组列表
A A
B B
D D
我试过这个
prse = calls.get(t).split(""); //also tried prse = calls.get(t).split("", -1);
call1.add(prse[0]);
call2.add(prse[1]);
但它用空字符填充了我的数组列表。(打印 [] [, ] [, , ] [, , , ] [, , , , ])
所以我尝试了
String split = calls.get(t).substring(0,1); //This is 285 that is puking
String split2 = calls.get(t).substring(1,2);
System.out.println(split);
call1.add(split);
System.out.println("1: " + call1);
call2.add(split2);
System.out.println("2: " + call2);
这在一定程度上起作用,但随后死于可怕的死亡:
1: [F, P, T, B, F, D, S, G, G, G, Z, S, Q, E, F, H, L, P, O, L, G, B, V, F, W, Q, T, H, G, E, R, T, Y, C, G, D, C, H, C, A]
2: [o, G, U, U, Y, Y, T, T, T, T, T, R, E, S, G, J, H, C, H, H, H, G, C, J, H, D, G, J, H, D, R, G, V, C, G, V, V, D, V, V]
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: 1
at java.lang.String.substring(String.java:1946)
at print.Reader.ffy(Reader.java:285)
at print2.Print2.main(Print2.java:48)
谁能建议一个更好的方法来做到这一点(或者向我解释我做错了什么)?注意:我想将拆分的字母放入自己的,单独的 ArrayList 字符串中(由于以后使用。)所以我宁愿不使用 charArray。