日期:2014-05-20 浏览次数:20697 次
由于J2ME里没有slipt方法,所以用到的时候需要自己写,网上的代码大多都是转成了Vector然后由Vector转为String数组的,我提供一种不需要Vector辅助的方法,两种方法各有利弊,大家权衡。
?
不需要vector辅助的slipt方法 比较消耗速度 适用于小字符串拆分,由于不需要另外创建一个vector,省去了相当的内存开销,但占用了不小的运算开销,所以适用于字数比较少的字符串拆分。
public static String[] slipt(String st, String sli) { int temp = 0; int length = 0; String str[] = null; while((temp = st.indexOf(sli)) != -1) { length++; } str = new String[length]; for(int i = 0; i < str.length; i++) { str[i] = st.substring(0, temp); st = st.substring(temp+3); } return str; }
?
需要vector辅助的slipt方法 适用于比较长的字符串,由于只是while了一次,中规中矩,所以比上面的方法要适用,内存的开销一样很大。
public static String[] slipt(String st, String sli) { int temp = 0; Vector v = new Vector(0, 1); String str[] = null; while((temp = st.indexOf(sli)) != -1) { v.addElement(st.substring(0, temp)); st = st.substring(temp+3); } str = new String[v.size()]; for(int i = 0; i < v.size(); i++) { str[i] = v.elementAt(i).toString(); } return str; }
?
?