当前位置: 首页 > news >正文

百度大数据查询武汉seo主管

百度大数据查询,武汉seo主管,购物帮做特惠的导购网站,哪些网站是专门做牛仔批发的在写Android接收蓝牙数据的时候,由于传过来的蓝牙数据转换后都为字符串格式,但是需要从其中提取出来浮点数,所以通过查阅资料写出了从字符串中提取并转换为浮点数的方法,特记录下来以供参考。 目录 原始数据内容 提取字符串中的…

在写Android接收蓝牙数据的时候,由于传过来的蓝牙数据转换后都为字符串格式,但是需要从其中提取出来浮点数,所以通过查阅资料写出了从字符串中提取并转换为浮点数的方法,特记录下来以供参考。

目录

原始数据内容

提取字符串中的相关数值部分

分割出单个数值并转换为float/double类型

通过空格分割出单个的字符串

单个字符串String转换为浮点数float/double


原始数据内容

均为String字符串类型,数据是浮点数类型并有可能出现负数

Acceleration X: 9.84, Y: -2.54, Z: -1.84 m/s

Rotation X: -0.08, Y: -0.07, Z: 0.01 rad/s^2

提取字符串中的相关数值部分

使用Java中的Character类中的isDigit()方法来判断当前字符是否为数字,并在字符串中进行遍历。还要利用StringBuilder对象来构建目标字符串。

从上面的数据中可以分析得我们不应该只保留数字,遇到小数点负号也要保留,并且这里我还把空格保留了下来,方便之后提取一个一个的数字

String str = "xxxxxxx";//待提取的字符串StringBuilder sb = new StringBuilder();
for (char c : str.toCharArray()) {if (Character.isDigit(c)||c=='.'||c==' '||c=='-') {sb.append(c);}
}String result = sb.toString();

通过这一步的操作提取出来的结果仍然是字符串String类型,但内容变成了

9.84    -2.54    -1.84

-0.08    -0.07    0.01

分割出单个数值并转换为float/double类型

由于上一步得出来的结果仍然是字符串类型,并且一个字符串当中有多个数值,通过空格分割出来,所以我们还要单个提取其中的每一个数值

通过空格分割出单个的字符串

首先利用字符串中的每个数值之间是通过空格分隔的,所以可以分割出来一个一个的数值字符串。通过split()方法可以分成一个字符串数组,遍历数组便会得到一个一个的数值

String [] arr = str.split(" "); //str为待分割的字符串
for(String ss : arr){System.out.println(ss);
}

为了防止字符串数组arr中一些元素可能出现一些非数值的内容(因为空格个数问题),我们还可以多加一步判断,将上面的代码修改,增加一个isNumeric()函数,其使用正则表达式是判断字符串是否为数字的一种常见方法。Java中的正则表达式可以通过matches()方法来进行匹配。

public static boolean isNumeric(String str) {return str.matches("-?\\d+(\\.\\d+)?");
}String [] arr = str.split(" "); //str为待分割的字符串
for(String ss : arr){if(isNumeric(ss))System.out.println(ss);
}

单个字符串String转换为浮点数float/double

上述可以通过for循环打印出来一个一个的字符串,每个字符串中都包括了一个浮点数,但由于此时还是String类型,所以我们需要类型转换。

Float.parseFloat()方法可以将字符串转化为float类型的浮点数。该方法接收一个字符串作为参数,返回对应的float类型的浮点数值。如果字符串无法转化为合法的浮点数,则会抛出NumberFormatException异常。

String str = "3.14";
float floatValue = Float.parseFloat(str);
System.out.println(floatValue); // 输出结果为 3.14

Double.parseDouble()方法与Float.parseFloat()方法类似,可以将字符串转化为double类型的浮点数。 

String str = "3.14";
double doubleValue = Double.parseDouble(str);
System.out.println(doubleValue); // 输出结果为 3.14

借由上面的代码我们就可以把整体的代码给得出来,并且通过for循环把每个转换后的浮点数给成功打印出来

String str = "xxxxxxx";//待提取的字符串StringBuilder sb = new StringBuilder();
for (char c : str.toCharArray()) {if (Character.isDigit(c)||c=='.'||c==' '||c=='-') {sb.append(c);}
}String resultStr = sb.toString();public static boolean isNumeric(String str) {return str.matches("-?\\d+(\\.\\d+)?");
}float floatValue;
String [] arr = resultStr.split(" "); //str为待分割的字符串
for(String ss : arr){if(isNumeric(ss))floatValue = Float.parseFloat(ss);System.out.println("转换后的浮点数值为:"+floatValue);
}

http://www.mmbaike.com/news/56044.html

相关文章:

  • 公司网站制作与推广公司网站模版
  • 如何做公众号影视网站百度秒收录排名软件
  • 建立网站的链接结构有哪几种形式简述其各自的优缺点推广普通话心得体会
  • 什么是网站原创文章企业新闻营销
  • 深圳包装设计公司排名前十强结构优化设计
  • 网站建设的发票税率广东网站营销seo方案
  • 顶尖手机网站建设网络优化器
  • 网站返回404广告推广代运营公司
  • 做网站的平台数据分析系统
  • 绵阳网站推广优化百度seo培训课程
  • 网站 面包屑seo知识点
  • 桂林政府网站建设百度注册页面
  • 上海最新疫情数据绍兴百度seo
  • 本地升级wordpress电脑优化设置
  • 做设计有哪些地图网站网络营销软件推广
  • dede 网站源码网络推广网站电话
  • 网站 风格个人免费开发网站
  • jfinal网站开发模板十大最靠谱教育培训机构
  • 网站的信息架构竞价被恶意点击怎么办
  • org.cn的网站备案条件郑州网站制作推广公司
  • 廉洁甘孜权威发布深圳seo博客
  • 创建集团上海公司网站深圳网络推广优化
  • 一元购网站建设多少钱app推广好做吗
  • 算命网站该怎样做关键词seo深圳
  • html网站服务器搭建新浪疫情实时数据
  • 深圳有哪些做网站的公司店铺推广渠道有哪些
  • 东莞九江网站制作优化网站搜索
  • 怎么建设一个漫画网站seo服务公司
  • 做设计适合关注的网站百度手机助手app下载安装
  • 深圳做网站电话百度推广费用可以退吗