split()分割字符串

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/qq_44002167/article/details/90451497

一,题目
编写一个方法,返回一个double型二维数组,数组中的元素通过解析字符串参数获得,如字符串参数:
“1,2;3,4,5;6,7,8,”对应的数组为:
arry[0][0]=1.0 arry[0][1]=2.0
arry[1][0]=3.0 arry[1][1]=4.0 arry[1][2]=5.0
arry[2][0]=6.0 arry[2][1]=7.0 arry[2][2]=8.0
二,源代码

package home516;

public class Func {
	public static void main(String [] args) {
		double arry[][];
		String str="1,2;3,4,5;6,7,8";
		String[] sFirst=str.split(";");
		arry=new double[sFirst.length][];
		for(int i=0;i<sFirst.length;i++) {	
			String [] sSecond=sFirst[i].split(",");
			arry[i]=new double[sSecond.length];
			for(int j=0;j<sSecond.length;j++) {
					arry[i][j]=Double.parseDouble(sSecond[j]);
					}
			}
			for(int i=0;i<arry.length;i++) {			
				for(int j=0;j<arry[i].length;j++) {				
					System.out.printf("arry["+i+"]["+j+"]="+arry[i][j]+"  ");			
					}			
				System.out.println();		
			}
						
	}
}

三,运行结果
在这里插入图片描述
四,总结
利用String类中的split函数进行分割,同时将结果存放在一个二维数组中。问题在于怎么利用两次split分割后放在数组的两个维度中,过程不再撰述。数组为引用型,需要申请内存。String类型转换为double利用的时包装类的静态方法parseDouble(),parseXxx可以将变量内容匹配的字符串转换为对应的基本数据类型。遍历时使用System类中的System.out.printf();区别就是:前者可以不换行的输出,而System.out.println()的每一个都要换行。

猜你喜欢

转载自blog.csdn.net/qq_44002167/article/details/90451497