如何将string类型转换为int类型

发布于 2021-12-03 04:11:07 字数 250 浏览 946 评论 5

我获得的是string 类型的字符串数据:

[[-8.6481,41.152536],[-8.647461,41.15241],[-8.646876,41.153139],[-8.645931,41.153823],[-8.645337,41.154354],[-8.643303,41.154327]]

是点坐标数据,如何才能将坐标提取出来?如果用list()来强制转换是一个一个的字符,不是我想要的。

请前辈们指点一下

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

可是我不能没有你 2021-12-03 20:07:51

用eval转。还有你那个不是int型,而是浮点型(float)

海之角 2021-12-03 19:25:42

谢谢前辈指点!学习了

不再见 2021-12-03 18:28:34
pos_list = []
# 首先把坐标点分离
for pos_str in orig.strip('[').strip(']').split('],['):
    然后转换成包含两个float的tuple
    p1,p2 = post_str.split(',')
    pos_list.append((float(p1),float(p2)))

不再见 2021-12-03 18:02:35

谢谢前辈!学习了

如日中天 2021-12-03 09:33:16

首先分析这一串数据,可以看出,这是List<List<Double>>类型转成json后的数据。我们只需要将这个json字符串反转回来,然后去List中取数据即可。

public static void main(String[] args) {
	String str="[[-8.6481,41.152536],[-8.647461,41.15241],[-8.646876,41.153139],[-8.645931,41.153823],[-8.645337,41.154354],[-8.643303,41.154327]]";
	List<List<Double>> list=(List<List<Double>>) JsonMapper.fromJsonString(str, List.class);
	for(List<Double> o:list){
		System.out.println(o.get(0)+"---"+o.get(1));
	}
}

JsonMapper是一个json和Object互转的工具类。

输出结果:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文