我必须定期将消息与" @"分开。我必须用第一个@符号分隔部分,但我有一些速度问题。 我可以使用代码更轻松地解释它:
String mymessage = "java@hel@@lo @world!@@@";
String[] mysplit = fastlySeparateFunc(mymessage);
System.out.println(mysplit[0]);
System.out.println(mysplit[1]);
/*
and output must be like this :
java
hel@@lo @world!@@@
*/
我怎么写呢? (fastlySeparateFunc)
答案 0 :(得分:3)
关于最快的速度,您可以使用String.indexOf
:
int pos = mymessage.indexOf('@');
String[] mysplit = {mymessage.substring(0, pos), mymessage.substring(pos+1)};
但我怀疑它会明显快于:
String[] mysplit = mymessage.split("@", 2);
我怀疑使用indexOf
可能稍微更快,因为您不必使用完整的正则表达式机制。但我认为差异很小。
答案 1 :(得分:0)
您可以将String转换为StringTokenizer对象并将其拆分为分隔符'@'
StringTokenizer str=new StringTokenizer(mymessage,'@');