题目要求
编写一个方法,返回一个double型二维数组,数组中的元素通过解析字符串参数获得。如字符串参数:"1,2;3,4,5;6,7,8",对应的数组为:
d[0][0]=1.0 d[0][2]=2.0
d[1][0]=3.0 d[1][1]=4.0 d[1][2]=5.0
d[2][0]=6.0 d[2][1]=7.0 d[2][2]=8.0
代码
/*
* @Author:Innocence
* @IDE:eclipse
* @OS:win10
* @Edition:1.0
* @Time:19/5/18
*
*/
package java_0516;
public class Trans {
void get_array(String s) {
//输入一个字符串,返回Double类型的数组
String[] s1=s.split(";"); //以“;”分开数组
double[][] d = new double[s1.length][]; //创建一个double类型的二维数组,行数为字符串s分开后的数组的长度
for(int i=0;i<s1.length;i++) {
String[]s2=s1[i].split(",");//将s1的每一组以“,”分开
d[i]=new double [s2.length];//初始化d的列,长度为s2对应数组的长度
for(int j=0;j<s2.length;j++) {
d[i][j]=Double.valueOf(s2[j]);//将s2的每一组转换为Double类型的数组
}
}
for(int i=0;i<d.length;i++)
for(int j=0;j<d[i].length;j++)
System.out.println("d"+"["+i+"]"+"["+j+"]"+"="+d[i][j]);//输出转换后的数组
}
public static void main(String[] args) {
Trans t=new Trans();
t.get_array("1,2;3,4,5;6,7,8");//将字符串转换成Double类型的数组
}
}