1. 字符串中提取数字

两个函数可以帮助我们从字符串中提取数字(整型、浮点型、字符型...)。

  • parseInt()、parseFloat()...
  • valueOf()
  String str = "1230";
int d = Integer.parseInt(str); //静态函数直接通过类名调用,返回int型
 //or
int d3 = Integer.valueOf("1230"); //通过静态函数valueOf返回包装类Integer类型
System.out.println("digit3: " + d3);

注意:从字符串中提取可能会产生一种常见的异常: NumberFormatException。

原因主要有两种:

  • Input string contains non-numeric characters. (比如含有字母"123aB")

  • Value out of range.(比如Byte.parseByte("128") byte的数值范围在 -128~127)

解决方法:

  通过 try-catch-block 提前捕捉潜在异常。

 try {
float d2 = Float.parseFloat(str);
System.out.printf("digit2: %.2f ", d2 );
} catch (NumberFormatException e){
System.out.println("Non-numerical string only.");
} try {
byte d4 = Byte.parseByte(str);
System.out.println("digit3: " + d4);
} catch (NumberFormatException e) {
System.out.println("\nValue out of range. It can not convert to digits.");
}

2. 数字转字符串

使用 String 类的 valueOf() 函数

 String s = String.valueOf(d); 

3. 代码

public class StringToDigit {
public static void main(String[] args) { //convert string to digits using parseInt()、parseFloat()...
String str = "127";
int d = Integer.parseInt(str);
System.out.printf("d: %d ", d); try {
float d2 = Float.parseFloat(str);
System.out.printf("digit2: %.2f ", d2 );
} catch (NumberFormatException e){
System.out.println("Non-numerical string only.");
} //or using valueOf()
int d3 = Integer.valueOf("1230");
System.out.println("digit3: " + d3); try {
byte d4 = Byte.parseByte(str);
System.out.println("digit3: " + d4);
} catch (NumberFormatException e) {
System.out.println("\nValue out of range. It can not convert to digits.");
} //convert digits to string using valueOf()
System.out.println(String.valueOf(d));
System.out.println(String.valueOf(d3));
}
}

加油各位!如果觉得有用的话,可以点个推荐吗?(祈求脸.jpg) 

字符串转数字(with Java)的更多相关文章

  1. [原]Java面试题-将字符串中数字提取出来排序后输出

    [Title][原]Java面试题-将字符串中数字提取出来排序后输出 [Date]2013-09-15 [Abstract]很简单的面试题,要求现场在纸上写出来. [Keywords]面试.Java. ...

  2. java中字符串与数字的互相转换

    import java.text.DecimalFormat; /* * String类中本身提供方法可以将几乎所有的基本类型转换为String类型 * sysout alt+/ 可以直接显示Syst ...

  3. JavaScript字符串转数字的5种方法及其陷阱

    摘要 :JavaScript 是一个神奇的语言,字符串转数字有 5 种方法,各有各的坑法! String 转换为 Number 有很多种方式,我可以想到的有 5 种! parseInt(num); / ...

  4. kotlin字符串和数字之间的转换和人机交互

    继续基础学习~ 字符串和数字之间的转换 那如何转换呢,其实很简单: 编译木有报错,但是运行: 所以这里了解下. 人机交互 看这标题貌似高端的,其实也就是程序可以接受键盘的输入啦,下面开始: 首先提示用 ...

  5. 转:IE兼容模式下 SCRIPT1028: 缺少标识符、字符串或数字

    IE兼容模式下 SCRIPT1028: 缺少标识符.字符串或数字例如下面一段代码 var a = {    x: 1,    y: 2,};alert(a.x);如果在IE的兼容性视图(IE7文档模式 ...

  6. 剑指Offer面试题:35.将字符串转换为数字

    一.题目:将字符串转换为数字 题目:写一个函数StrToInt,实现把字符串转换成整数这个功能.当然,不能使用atoi或者其他类似的库函数. 二.代码实现 (1)考虑输入的字符串是否是NULL.空字符 ...

  7. Oracle 把秒转成时分秒格式(hh24:mm:ss);检测字符串是否是数字;字符串转换为数字

    不说废话,贴代码: CREATE OR REPLACE FUNCTION to_time(sec IN NUMBER) RETURN VARCHAR2 IS /*把秒转成时分秒格式 auth lzpo ...

  8. js 字符串转换数字

    方法主要有三种转换函数.强制类型转换.利用js变量弱类型转换. 1. 转换函数: js提供了parseInt()和parseFloat()两个转换函数.前者把值转换成整数,后者把值转换成浮点数.只有对 ...

  9. php 字符串和数字比较一些问题

    本文章来给大家介绍关于php 字符串和数字比较一些问题,因为数字与字符在php中是不同的数据类型,所以在比较时可能会有很多的问题. ,1,2等等,其中0标示成功,其他表示不同的错误代码.程序通过 if ...

  10. javascript 在ie8中报“缺少标识符、字符串或数字“问题再现:

    开发和测试使用Chrome浏览器比较多,客户反馈某个页面打不开,自己用Chrome打开一切正常,用ie8打开,果然页面展现卡在那儿了,并且报了"缺少标识符.字符串或数字".查看是在 ...

随机推荐

  1. tesseract4.0:win10 +x64+vs2015 源码安装(ViewerDebugging)安装记录

    参考文章: https://blog.csdn.net/u013985291/article/details/78295789 https://blog.csdn.net/u013985291/art ...

  2. java高并发系列 - 第32天:高并发中计数器的实现方式有哪些?

    这是java高并发系列第32篇文章. java环境:jdk1.8. 本文主要内容 4种方式实现计数器功能,对比其性能 介绍LongAdder 介绍LongAccumulator 需求:一个jvm中实现 ...

  3. UVA 10699 Count the factors 题解

    Time limit 3000 ms OS Linux Write a program, that computes the number of different prime factors in ...

  4. java.lang.Thread类详解

    java.lang.Thread类详解 一.前言 位于java.lang包下的Thread类是非常重要的线程类,它实现了Runnable接口,今天我们来学习一下Thread类,在学习Thread类之前 ...

  5. 一文看尽Java-Thread

    一.前言      主要分成两部说起:Thread源码解读和常见面试题解答,废话不多说开始: 二.源码解读 首先看下构造函数,构造函数都是通过调用init方法对属性进行初始化,主要是对线程组.线程名字 ...

  6. python小白短期基础入门

    一.编程语言介绍与分类 1.什么是编程语言 编程语言本质就是人类的语言,主要用于沟通交流.我们通过编程语言与计算机进行互动交流,从而使计算机来帮助我们实现一些特定的功能和一些复杂的工作. 2.编程语言 ...

  7. 《阿里巴巴Java开发手册1.4.0》阅读总结与心得(四)

    (七)设计规约 1. [强制] 存储方案和底层数据结构的设计获得评审一致通过,并沉淀成为文档. 说明: 有缺陷的底层数据结构容易导致系统风险上升,可扩展性下降,重构成本也会因历史数据迁移和系统平滑过渡 ...

  8. ST算法 Sliding Window algorithm template

    ST算法(Sliding Window):A easy way to slove the substring problems algorithm template to slove substrin ...

  9. c#搭建webapi项目

    一.添加WebApi项目     二.nuget下载WebApi所需的类库引用 install-package Microsoft.AspNet.WebApi install-package Micr ...

  10. Mysql的事务及行级锁

    转自:http://www.cnblogs.com/edwinchen/p/4171866.html 以签到为例,每个用户每天只能签到一次,那么怎么去判断某个用户当天是否签到呢?因为当初表设计的时候, ...