今天早上一来就开始复习昨天写过的程序,可是怎么想也想不起来昨天那个程序是怎么写的,思路也比较混乱,先把程序题目写出来吧.
题目:编写一个方法,返回一个double型二维数组,数组中的元素通过解析字符串参数获得.例如:"1,2;3,4,5;6,7,8,9",得到一个二维数组{{1,2},{3,4,5},{6,7,8,9}}.
现在我把昨天的思路整理了一下:
要得到一个二维数组,得先得到二维数组中的一维,那就是从一个数符串中用";"分隔符把字符串隔开,得到一维.这里就想到了用String类中的split方法,然后就要得到二维数组中的二维,再最后把得到的数放到一个二维数组中,这其中还要使用Double类中的parseDouble方法把数字串转成double类型.代码如下:
public class TestArrayParser {
public static void main(String[] args) {
Double[][] d;
String arr = "1,2;3,4,5;6,7,8,9";
String[] aString = arr.split(";");
d = new Double[aString.length][];
for(int i=0; i<aString.length; i++) {
String[] bString = aString[i].split(",");
d[i] = new Double[bString.length];
for(int j=0; j<bString.length; j++) {
d[i][j] = Double.parseDouble(bString[j]);
System.out.print(d[i][j] + " ");
}
System.out.println();
}
}
}
这个程序很简单,关键是要学会这里的思维方法,然后对不熟悉的类和方法去API文档中查询.