java String 转成Double二维数组

WHY

        朋友在群里求助一个问题,问题原型是这样的:

String str = "{{10.14, 11.24, 44.55, 41.01},{12.10, 14.21, 52.14, 50.44},{14.44, 16.12, 45.42, 47.55}}";
转成double[][]{  
            {10.14, 11.24, 44.55, 41.01},  
            {12.10, 14.21, 52.14, 50.44},  
            {14.44, 16.12, 45.42, 47.55}  
        }

也就是把一个可以转换的String转成double的二维数组。


HOW

       乍一看,感觉很简单,实现了一下,按惯例先贴代码:

String str = "{{10.14, 11.24, 44.55, 41.01},{12.10, 14.21, 52.14, 50.44},{14.44, 16.12, 45.42, 47.55}}";
		str = str.replace("{", "[").replace("}", "]");
		String[][] arr = JSON.parseObject(str, String[][].class);
		Double[][] ds = new Double[arr.length][arr[0].length];
		for(int j=0;j<arr.length;j++){
			for(int i=0;i<arr[0].length;i++){
				ds[j][i] = Double.valueOf(arr[j][i]);
			}
		}

       这个里面有几个要注意的点是

      1.先将花括号替换成中括号,

       2.使用JSON的转化,先转成String的二维数组

       3.然后才是把数组中的值转成Double的

       4.我使用的JSON包是fastjson的

    import com.alibaba.fastjson.JSON;





  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值