Java StringTokenizer不';t在数字末尾显示0
我正在使用Java,我使用StringTokenizer来获得字符串的一部分,但问题是,当我使用“StringTokenizer”时,结果的一部分不会出现这是我的Java代码:Java StringTokenizer不';t在数字末尾显示0,java,stringtokenizer,Java,Stringtokenizer,我正在使用Java,我使用StringTokenizer来获得字符串的一部分,但问题是,当我使用“StringTokenizer”时,结果的一部分不会出现这是我的Java代码: for(String iopp:opp){ StringTokenizer tokenizer = new StringTokenizer(iopp,"form:blocConfigurations:configurations:0:parametrage:options:");
for(String iopp:opp){
StringTokenizer tokenizer = new StringTokenizer(iopp,"form:blocConfigurations:configurations:0:parametrage:options:");
while(tokenizer.hasMoreTokens()){
ind.add(tokenizer.nextToken());
}
}
logger.info("Mes indices sont :"+ind);
在我的控制台中:
what was it :[form:blocConfigurations:configurations:0:parametrage:options:1, form:blocConfigurations:configurations:0:parametrage:options:6, form:blocConfigurations:configurations:0:parametrage:options:9, form:blocConfigurations:configurations:0:parametrage:options:17, form:blocConfigurations:configurations:0:parametrage:options:20, form:blocConfigurations:configurations:0:parametrage:options:21, form:blocConfigurations:configurations:0:parametrage:options:22]
17:13:45,876 INFO [com.sfr.price.functionalTest.scenario.impl.AJLINGE.etapeParametrerOption](821) [] Mes indices sont :[1, 6, 9, 17, 2, 21, 22]
StringTokniser的工作原理非常简单,但我不明白为什么在这个元素中
表单:BlocConfiguration:配置:0:参数:选项:20
它只显示了2个,而不是20个
提前感谢阅读javadoc:。form:blocConfiguration:configurations:0:parametrace:options:
中的每个字符都是delimeter0
也是delimeter,因为此字符串包含0
。
StringTokenizer
不是此任务的合适工具。您可以尝试使用字符串。拆分:
String[] tokens = iopp.split("form:blocConfigurations:configurations:0:parametrage:options:");
但是要小心,因为split
将regex作为延迟器。如果delimeter字符串中有一些特殊字符,则需要对其进行转义。中delim的每个字符都被视为单独的分隔符
您应该考虑在源中使用“/p>”作为注释,StruttoKeNisher是一个遗留类,它保留了**兼容性的原因,尽管在新代码中它的使用被阻止了。*建议寻求此功能的任何人使用String的split*方法或java.util.regex包,而不是当我使用split时,它返回如下内容:Mes索引sont:[]Mes索引sont:1[]Mes索引sont:[]Mes索引sont:6[]Mes索引sont:[]Mes索引sont:9[]Mes索引sont:[]Mes索引sont:17[]Mes索引sont:[]Mes索引sont:20[]Mes索引sont:[]Mes索引sont:21[]Mes索引sont:[]Mes索引sont:22@asmae可以从数组中删除所有空字符串