我正在开发一个函数,它接受代码(字符串字符)并将它们放入 HashMap 中,所以谈论代码,它总是 ULI_ULI_ULI... U 表示用户,L 不表示任何内容,N 是 ID。 字符_用于分隔集合编号,我的意思是,如果我有3条记录,我将得到ULI_ULI_ULI,如果有2条ULI_ULI,如果是1条记录,我将得到ULI。 目标是获取 U 和 I 并将它们插入到 HashMap 中, 步骤: 1/在表中使用 _ 进行拆分:
String s = code;
String[] a = s.split("_");
for(int i = 0; i < a.length; i++) {
System.out.println(a[i]);
}
结果:
2L1
3L1
4L2
2/使用 L 再次分割: 我得到的结果是
2
1
3
1
4
2
这不是我真正想要的。我想获取每个第一个结果的索引(0)和索引(2)中的字符并将它们放入 hashmap 中。
最佳答案
几乎就可以从已经定义的循环中完成这一切
String s = code;
String[] a = s.split("_");
HashMap <String, String> result = new HashMap <String, String>();
for(int i = 0; i < a.length; i++) {
String [] inner = a[i].split ("L");
if (inner.length > 1) {
System.out.printf("%s %s%n", inner [0], inner[1]);
result.put (inner [0], inner[1]);
}
}
关于java - 使用两个字符java多次分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48918741/