转载网址:http://grewaller.blog.163.com/blog/static/654105520078610913562/
public class Jian{
public static void main(String[] args) {
String strInfo = "22,22,33"; //测试字符串,可随意更换
String strSplit = ","; //测试分隔串,可随意更换
//调用函数,返回打印数值
String[] a = yang_split(strInfo, strSplit);
for(int k = 0; k< a.length; k++) System.out.println("a["+k+"]: "+ a[k]);
}
//★★★★★★★★★★★★★★★★★★★ 函数 ★★★★★★★★★★★★★★★★★★★
public static String[] yang_split(String strInfo, String strSplit) {
//第1步计算数组大小(6行程序)
int size = 1;
for(int k = 0; k < strInfo.length(); k++) {
if (strInfo.substring(k,k+1) != null && (strInfo.substring(k,k+1)).equals(",")) {
size++;
}
}
String[] arrRtn = new String[size]; //返回数组
String strTemp = ""; //临时变量
//-------------------------------------------------------
//第2步给数组赋值(25行程序)
int len = strInfo.length();
int index =0;
int i = 0;
while (len > 1){
index = strInfo.indexOf(strSplit);
if (index>0){
strTemp = strInfo.substring(0, index);
strInfo = strInfo.substring(index+1);
arrRtn[i++] = strTemp;
} else if (index==0){
strInfo = strInfo.substring(index+1);
arrRtn[i++] = "";
} else{
break; //极端情况,如"4556658"
}
len = strInfo.length();
}
index = strInfo.indexOf(strSplit);
if(index == 0){
arrRtn[i++] = "";
arrRtn[i] = "";
}else{
arrRtn[i] = strInfo;
}
return arrRtn;
}
}
=====================================================================
程序全部代码如上,效果及帖图如下图.
1.分隔函数
![](http://img.blog.163.com/photo/h6RelLe4J1L3KxHpOyq4rg==/4578753446152531695.jpg)
![](http://img.blog.163.com/photo/KSod8f-f3qN1P31LJ_KJqQ==/4578753446152531696.jpg)
![](http://img.blog.163.com/photo/DqngGtZveffQGGX92J7wrg==/608548899648837941.jpg)
//★★★★★★★★★★★★★★★★★★★ 函数 ★★★★★★★★★★★★★★★★★★★
public static String[] lj_split(String strInfo, String strSplit) {
//第1步计算数组大小
int size = 0;
int index = 0;
do{
size++;
index++;
index = strInfo.indexOf(strSplit ,index);
}while(index!=-1);
//-------------------------------------------------------
//第2步给数组赋值(25行程序)
int startIndex = 0;
int endIndex = 0;
for(int i = 0; i < size; i++){
endIndex = strInfo.indexOf(strSplit, startIndex);
if(endIndex == -1) {
arrRtn[i] = strInfo.substring(startIndex);
} else {
arrRtn[i] = strInfo.substring(startIndex, endIndex);
}
startIndex = endIndex+1;
}
return arrRtn;
}
![](http://img.blog.163.com/photo/9rdrUDcWDeNCZ1o8UQAhSQ==/2292050735355200804.jpg)