JAVA如何从字符串中获得数字

来源:百度知道 编辑:UC知道 时间:2024/04/29 06:00:14
请问我想在JAVA中的字符串获得数字该怎样呢?
例如:要求用户输入100C (表示100摄氏度),然后我想获取前面的100,把他计算成华氏度然后输出···
谢谢
我尝试过用subString截取前面的字符串,然后强制转换成int型再保存,可是不行···

首先求出该字符串的长度 截取除最后一位的字符就OK了

代码
假设String str="100c";
int i=str.length();//str.length还是str.length()忘了 你自己试下
int tem=Integer.parseInt(str.subString(0,i-2));

这个tem就是最后的那个温度咯

如果输入的字符仅包含0-9 a-z A-Z ,那用getByte()获取Ascii比对;

或者用正则式来判断

怎么不行呢?
你就一个字符一个字符地取,
取一个出来判断它是不是数字,如果是则将它保存在另一个字符串里,取到第二个数字的时候则将它加在那个字符串里,最后将它转为数字就行了呀

Integer.parseInt( s.substring(0,s.indexOf('c')));

1:先看看字符串的第一个字符是不是在数字的范围之内;
2:在就把它赋值给一个字符变量,再把它强制转换,
3:再看字符串的下一个字符是不是在数字0-9的范围之内,在就和第二条相同,并且把上次的道德数字乘10再加上新得到的数字;如果不是就不管,退出。
4:第三条。

使用ASCII来比较吧 和提取中文转换成拼音一个道理

你用subString只能是部分提取也就是只能限定是你知道的来提取 不可通用

用ASCII来只要一个循环一个比较就出来了