一道关于数组的JAVA小程序.
编写一个方法返回一个DOUBLE型的二维数组.数组元素通过解析字符串获得如:"1,2;3,4,5;6,7,8"对应为d[0,0]=1.0,d[0,1]=2.0.d[1,0...
编写一个方法 返回一个DOUBLE型的二维数组.数组元素通过解析字符串获得
如:"1,2;3,4,5;6,7,8" 对应为d[0,0]=1.0,d[0,1]=2.0.d[1,0]=3,以此类推.
望高手解答. 展开
如:"1,2;3,4,5;6,7,8" 对应为d[0,0]=1.0,d[0,1]=2.0.d[1,0]=3,以此类推.
望高手解答. 展开
展开全部
简单做了一下,分别用了两种字符串解析方法:Split和StringTokenizer。你可以看一下:
import java.util.StringTokenizer;
public class Split {
/**
* @param args
*/
public static void main(String[] args) {
String str = "1,2;3,4,5;6,7,8"; //待解析字符串
double[][] d = split(str); //解析结果
for(int i=0;i<d.length;i++){
for(int j=0;j<d[i].length;j++){
System.out.print(" "+d[i][j]);
}
System.out.println();
}
}
public static double[][] split(String str){
String[] temp = str.split(";"); //首先以分号;做分割
double[][] d = new double[temp.length][]; //此处二维处第二维是以每个分号的数据数量决定
for(int i=0;i<temp.length;i++){ //一一解析每个分号间的数据
StringTokenizer st = new StringTokenizer(temp[i],",");
d[i] = new double[st.countTokens()];
for(int j=0;j<d[i].length;j++){
d[i][j] = Double.parseDouble(st.nextToken()); //将每个数据一一解析为double型
}
}
return d;
}
}
import java.util.StringTokenizer;
public class Split {
/**
* @param args
*/
public static void main(String[] args) {
String str = "1,2;3,4,5;6,7,8"; //待解析字符串
double[][] d = split(str); //解析结果
for(int i=0;i<d.length;i++){
for(int j=0;j<d[i].length;j++){
System.out.print(" "+d[i][j]);
}
System.out.println();
}
}
public static double[][] split(String str){
String[] temp = str.split(";"); //首先以分号;做分割
double[][] d = new double[temp.length][]; //此处二维处第二维是以每个分号的数据数量决定
for(int i=0;i<temp.length;i++){ //一一解析每个分号间的数据
StringTokenizer st = new StringTokenizer(temp[i],",");
d[i] = new double[st.countTokens()];
for(int j=0;j<d[i].length;j++){
d[i][j] = Double.parseDouble(st.nextToken()); //将每个数据一一解析为double型
}
}
return d;
}
}
展开全部
public double[][] getDoubleArray(String str){
if(str==null||str.indexOf(":")==-1)
return null;
String[] stc=str.split(":");
double[][] da=new double[stc.length][];
for(int i=0;i<da.length;i++){
String[] srcs=stc[i].split(",");
for(int j=0;j<srcs.length;j++){
da[i][j]=Double.valueOf(srcs[j]);
}
}
return da;
}
if(str==null||str.indexOf(":")==-1)
return null;
String[] stc=str.split(":");
double[][] da=new double[stc.length][];
for(int i=0;i<da.length;i++){
String[] srcs=stc[i].split(",");
for(int j=0;j<srcs.length;j++){
da[i][j]=Double.valueOf(srcs[j]);
}
}
return da;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询