这是一道面试题,题目要求如下
要求不能使用split()方法,实现一个功能。例如:将一个字符穿Sting="1_2_3_4_5_6_7_8_9",
转变成字符串数组String[]={"123","456","789"}.
调用测试方法:
要求不能使用split()方法,实现一个功能。例如:将一个字符穿Sting="1_2_3_4_5_6_7_8_9",
转变成字符串数组String[]={"123","456","789"}.
/**
* 要求不能使用split()方法,实现一个功能。
* 例如:将一个字符穿Sting="1_2_3_4_5_6_7_8_9",
* 转变成字符串数组String[]={"123","456","789"}.
*/
//方式一:
public static void changeStringArray(String str){
String[] results = new String[]{"","",""};
for(int i=0; i<str.length();i+=2){
results[i/6] += str.charAt(i);
}
for (String result : results) {
System.out.println(result);
}
}
//方式二:
public static void changeStringArray1(String str){
str = str.replaceAll("_", "");
int index = 0;
String[] results = new String[str.length()/3];
for(int i=0;i<str.length();i+=3){
results[index] = str.substring(i,i+3);
index++;
}
for (String result : results) {
System.out.println(result);
}
}
调用测试方法:
public static void main(String[] args) {
String str = "1_2_3_4_5_6_7_8_9";
changeStringArray(str);
changeStringArray1(str);
}