java - 从特定子字符串之后开始的字符串中获取两个双子字符串
问题描述
对于 Android 应用程序,我使用的 API 返回以下格式响应:
"2016-05-08T14:07:58.738Z" | Lat: 50.012122| Long: 50.012122| Precision: 22.44868"
我正在尝试使用不同版本的.substring在两个Double中提取“Lat:”之后的双精度和“Long:”之后的双精度。代码很快变得很长,因为我多次调用子字符串(获取 Lat 和 Long 之后的值,并删除 | after 和其他所有内容)。
我正在寻找一种我目前看不到的更简洁和不复杂的方法。
谢谢你。
解决方案
按照@luk2302 的建议,我这样做了:
String lat = string.split("\\|")[1].split("\\s+")[2];
String long = string.split("\\|")[2].split("\\s+")[2];
最后将 Double.parseDouble 转换为 Double 之后。
推荐阅读
- c# - Graph Api 读取电子邮件的权限
- python - python: tkinter 切换 svg 内容
- javascript - 比较两个不同的对象数组并在 API 调用后找到匹配项时将数据推送到新对象
- c - 无法在 VSCode 中编译 C
- r - 尝试使用底格里斯河获取人口普查区代码时出现错误找不到函数“call_geolocator_latlon”
- swiftui - swiftui 按钮在预览中显示,但从不在模拟器或设备中显示
- flutter - IllegalFloatingActionButtonSizeException 浮动动作按钮必须是圆形
- python - 如何让我的函数使用字符串元组执行?
- rest - REST 服务的身份验证不适用于 jBPM(KIE 服务器和业务中心)和 Keycloak
- swift - 应该在哪里使用循环来为 SwiftUI 预览生成虚拟数据?