将一个字符穿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);
	}

你可能感兴趣的:(面试)