- 浏览: 514089 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (114)
- C基础 (1)
- C指针 (0)
- C语言库函数相关 (1)
- Linux (2)
- Linux网络编程 (1)
- PostgreSQL (0)
- Redis (2)
- Java Web (2)
- JAVA基础 (35)
- Ubuntu (8)
- Android (2)
- MySQL (3)
- 日志 (1)
- 书虫 (1)
- 数据结构 (0)
- 算法 (0)
- 开发工具 (1)
- 转载 (13)
- 英语 (18)
- tomcat启动脚本分析 (3)
- Oracle基础 (4)
- tomcat源码分析 (3)
- tomcat (1)
- Java相关 (1)
- Oracle基本原理--Oracle体系结构 (0)
- Oracle基本原理--表 (0)
- Oracle基本原理--索引 (0)
- Oracle基本原理--事务 (0)
- Oracle开发--SQL (1)
- Oracle基本原理--PL/SQL (0)
- Oracle基本原理--常用函数 (0)
- Oralce管理--用户及权限管理 (0)
- Oracle管理--安装调试 (0)
- Oracle管理--备份恢复 (0)
- Oralce管理--数据迁移 (0)
- Oracle管理--闪回 (0)
- Oracle管理--故障处理 (0)
- Oracle优化原理--统计信息 (0)
- Oracle优化原理--执行计划 (0)
- Oracle优化原理--诊断工具 (0)
- Oracle优化原理--深入理解表 (0)
- Oracle优化原理--深入理解索引 (0)
- Oracle优化原理--表连接原理 (0)
- Java--OOP (0)
- Java--异常 (0)
- Java--泛型 (0)
- Java--集合 (0)
- Java--IO (0)
- Java--枚举类型 (0)
- Java--注释 (0)
- Java--多线程 (0)
- Java--XML (0)
- Java--JDBC (3)
- Servlet (0)
- JSP (0)
- JSTL (0)
- 设计模式 (0)
- DAO与MVC (0)
- Javascript (2)
- Ajax (0)
- JQuery (0)
- HTML/CSS (0)
- 前端相关 (1)
- HTTP (0)
- TCP/IP (0)
- GO基础 (0)
最新评论
-
jsonmong:
推荐一个开发平台,采用的是插件化的设计思想,效果很不错的。ht ...
构建Java Web开发环境 -
wxm198427:
首先表示辛苦了!我想问个问题:我的是windows 7 x64 ...
Oracle 11g R2 for Win7旗舰版(64位)的安装步骤 -
握着橄榄枝的人:
我之前按照你的update mysql.user set pa ...
Windows7下MySQL5.5.20免安装版的配置 -
confident_f:
安装了32的客户端后,用plsql导入导出表有问题,生成不了d ...
Oracle 11g R2 for Win7旗舰版(64位)的安装步骤 -
confident_f:
安装数据库的时候第9步卡住了 是怎么回事呢?
Oracle 11g R2 for Win7旗舰版(64位)的安装步骤
在Java中提供了字符串与其他数据类型之间的转换,尤其是与基本数据类型和包装类间的转换,会被经常用到。
1、将其他数据类型转换为字符串
将其他数据类型转换为字符串存在两种方法:调用类的toString()方法和调用String类的valueOf()方法。
(1)调用类的toString()方法。如果该类为基本数据的包装类,则可以使用带参数的或不带参数的toString()方法。
不带参数的toString()方法为类的非静态方法,因此必须通过类对象进行调用。例如将一个Integer对象转换为字符串:
运行结果如下:
result=300200
带参数的toString()方法为类的静态方法,因此可以通过类直接进行调用。方法中的参数应为与包装类对应得基本数据类型变量或字面常数。例如转换一个float类型数据为字符串:
运行结果如下:
result=12.3451.02
通常情况下,不带参数的toString()方法用来将包装类数据转换为字符串,而带有参数的toString()方法则用来将基本数据类型转换为字符串。
在Java中的java.lang.Object类中提供了一个不带参数的toString()方法,该方法返回当前对象的字符串表示,返回值的形式为类名+“@”+十六进制数表示对象的地址。所有从Object类派生的子类都可以调用toString()返回类对象的字符串表示,并且子类可以覆盖toString()方法来返回其他值。另外在一些情况下,系统会自动调用对象的toString()方法,例如print()方法和字符串“+”运算。例如:
运行结果如下:
ConversionDemo1@7d8a992f
输出:ConversionDemo1@7d8a992f
(2)调用String类的valueOf()方法。通过调用String类的valueOf()方法既可以将包装类型数据转换为字符串,也可以将基本数据类型或字面常量转换为字符串,另外,在转换其他引用类型对象时,等价于调用该对象的toString()方法。例如分别转换float型数据为字符串,转换Double类型数据为字符串,转换ConversionDemo2类对象为字符串:
运算结果如下:
45.67810
12.34510
ConversionDemo2@8dc8569
Java中的基本数据类型都可以通过String中对应的valueOf()方法转换为字符串,然而在String类中并没有提供valueOf(byte b)和valueOf(short s)方法来转换byte和short型数据为字符串,但如下的方法调用是合法的:
这是因为byte和short被自动转换为了int型,从而调用的是valueOf(int i)方法。
2、将字符串转换为基本数据类型
(1)通过包装类的parseXxx()方法将一个字符串转换为该包装类对应的基本数据类型,但要求字符串必须为数字形式,例如int num = Integer.parseInt("123");是合法的,而int num = Integer.paseInt("abc");则会抛出“java.lang.NumberFormatException:For input string:”abc””异常。
各包装类所具有的parseXxx()方法如下表所示:
注意:其中,parseBoolean()方法中的字符串参数取值为“True”(大小写均可)时,结果为True;否则结果为False。
(2)通过包装类的对象调用xxxValue()方法。
例如:int i = new Integer("123").intValue();
各包装类所具有的xxxValue()方法如下表2所示:
通过表2可以看出:基本数据类型间除了boolean和char类型外,都可以相互转换,并且可以将包装类对象转换为对应的基本数据类型。
1、将其他数据类型转换为字符串
将其他数据类型转换为字符串存在两种方法:调用类的toString()方法和调用String类的valueOf()方法。
(1)调用类的toString()方法。如果该类为基本数据的包装类,则可以使用带参数的或不带参数的toString()方法。
不带参数的toString()方法为类的非静态方法,因此必须通过类对象进行调用。例如将一个Integer对象转换为字符串:
Integer num = new Integer(300); System.out.println("result="+(num.toString()+200));
运行结果如下:
result=300200
带参数的toString()方法为类的静态方法,因此可以通过类直接进行调用。方法中的参数应为与包装类对应得基本数据类型变量或字面常数。例如转换一个float类型数据为字符串:
float f=12.345f; System.out.println("result="+(Float.toString(f)+1.02f));
运行结果如下:
result=12.3451.02
通常情况下,不带参数的toString()方法用来将包装类数据转换为字符串,而带有参数的toString()方法则用来将基本数据类型转换为字符串。
在Java中的java.lang.Object类中提供了一个不带参数的toString()方法,该方法返回当前对象的字符串表示,返回值的形式为类名+“@”+十六进制数表示对象的地址。所有从Object类派生的子类都可以调用toString()返回类对象的字符串表示,并且子类可以覆盖toString()方法来返回其他值。另外在一些情况下,系统会自动调用对象的toString()方法,例如print()方法和字符串“+”运算。例如:
public class ConversionDemo1{ public static void main(String args[]){ ConversionDemo1 c=new ConversionDemo1();//创建ConversionDemo1类对象 String s="输出:"+c;//系统会先调用c对象的toString()方法,然后再进行字符串“+”运算 System.out.println(c);//系统会先调用c对象的toString()方法,然后输出方法的返回值 System.out.println(s); } }
运行结果如下:
ConversionDemo1@7d8a992f
输出:ConversionDemo1@7d8a992f
(2)调用String类的valueOf()方法。通过调用String类的valueOf()方法既可以将包装类型数据转换为字符串,也可以将基本数据类型或字面常量转换为字符串,另外,在转换其他引用类型对象时,等价于调用该对象的toString()方法。例如分别转换float型数据为字符串,转换Double类型数据为字符串,转换ConversionDemo2类对象为字符串:
public class ConversionDemo2{ public static void main(String args[]){ float f = 45.678f;//定义一个float型变量,并赋值为45.678 Double d = new Double(12.345);//创建一个Double对象 ConversionDemo2 c=new ConversionDemo2();//创建一个ConversionDemo2类对象 System.out.println(String.valueOf(f)+10);//调用String的valueOf(float f)方法转换float型数据为字符串,然后与整数10进行运算 System.out.println(String.valueOf(d)+10);//调用String的valueOf(Object obj)方法转换Double对象为字符串,然后与整数10进行运算 System.out.println(String.valueOf(c));//调用String的valueOf(Object obj)方法转换类对象c为字符串,然后输出 } }
运算结果如下:
45.67810
12.34510
ConversionDemo2@8dc8569
Java中的基本数据类型都可以通过String中对应的valueOf()方法转换为字符串,然而在String类中并没有提供valueOf(byte b)和valueOf(short s)方法来转换byte和short型数据为字符串,但如下的方法调用是合法的:
byte b='a'; short s=123; System.out.println(String.valueOf(b));//输出结果:97 System.out.println(String.valueOf(s));//输出结果:123
这是因为byte和short被自动转换为了int型,从而调用的是valueOf(int i)方法。
2、将字符串转换为基本数据类型
(1)通过包装类的parseXxx()方法将一个字符串转换为该包装类对应的基本数据类型,但要求字符串必须为数字形式,例如int num = Integer.parseInt("123");是合法的,而int num = Integer.paseInt("abc");则会抛出“java.lang.NumberFormatException:For input string:”abc””异常。
各包装类所具有的parseXxx()方法如下表所示:
注意:其中,parseBoolean()方法中的字符串参数取值为“True”(大小写均可)时,结果为True;否则结果为False。
(2)通过包装类的对象调用xxxValue()方法。
例如:int i = new Integer("123").intValue();
各包装类所具有的xxxValue()方法如下表2所示:
通过表2可以看出:基本数据类型间除了boolean和char类型外,都可以相互转换,并且可以将包装类对象转换为对应的基本数据类型。
发表评论
-
foreach循环
2013-06-24 16:15 1418从JDK1.5开始,Java提供了一个更简单的循环:forea ... -
可变参数
2013-06-24 15:38 1182从JDK1.5开始,Java允许使用可变参数为方法指定数量不确 ... -
泛型(core java 笔记)
2013-06-18 16:18 20121.为什么引入泛型 package generic; ... -
两个程序的说明
2010-10-19 09:26 11201、程序1的结果是: clas ... -
构造器初始化
2010-10-18 14:42 1469可以用构造器来进行初始化。在运行时刻,可以调用方法或执行某些动 ... -
成员初始化
2010-10-18 07:55 1188Java尽力保证:所有变量在使用前都能得到恰当的初始化。 对 ... -
线程的死锁
2010-10-11 19:21 1454当两个线程相互等待对方释放同步监视器时就会发生死锁,Java虚 ... -
线程的同步
2010-10-11 19:00 1238一个经典的关于线程安全性的问题:银行取钱问题。 银行取钱的基 ... -
java网站收集
2010-10-10 18:13 1216JAVA开发者最常去的25个英文网站:http://www.i ... -
控制线程
2010-10-10 16:06 19801、线程睡眠:sleep 如果我们需要让当前正在执行的线程暂 ... -
线程的状态
2010-09-28 19:00 990线程从创建到执行完毕的整个过程称为线程的生命周期,在整个生命周 ... -
Java中Thread类的start()和run()的区别
2010-09-27 15:33 40641、start()方法来启动线程,真正实现了多线程运行,这时无 ... -
Java中创建线程的两种方法
2010-09-26 10:18 5597在Java中创建线程有两种方法:继承Thread类和实现Run ... -
创建String对象过程的内存分配小结
2010-09-23 20:32 2738常量池(Constant Pool):指的是在编译期被确定,并 ... -
Java堆和栈的区别 经典总结(转载)
2010-09-18 16:48 1230栈与堆都是Java用来在Ram中存放数据的地方。 与C++不 ... -
Java初学者都必须理解的七大问题
2010-09-18 10:36 1090问题一:我声明了什么 ... -
关于计算java程序运行时间(转载)
2010-09-18 09:22 1081//第一种,伪代码 long startTime= ... -
for循环的优化
2010-09-17 20:29 2098在程序中经常用到for循环,当一些算法实时性要求非常高时,对f ... -
详细解析Java中抽象类和接口的区别(转载)
2010-09-17 10:16 1066在Java语言中,abstract class和inter ... -
集合类(四):Map集合
2010-09-16 20:26 21135、Map集合 Map集合为映射类型,映射与集和列表有明显的区 ...
相关推荐
Java 字符串和基本数据类型之间的转换
一些初学JAVA的朋友可能会遇到JAVA的数据类型之间转换的苦恼,例如,整数和float,double型之间的转换,整数和String类型之间的转换,以及处理、显示时间方面的问下面笔者就开发中的一些体会介绍给大家。 我们知道,...
C学习笔记之基础篇_转义符,ASII码对照表,字符字符串区别,数据类型转换 免费提供
Matlab字符串 字符串数组 数据类型转换.docx
Python基础知识,不同数据类型、字符串之间的转换以及其注意事项,小白学习笔记
其中19个函数示例代码,包含字符串筛选,各种数据类型之间的转换,工作之中用的非常之多。。
字符串和基本数据类型相互转换,以及基本类型之间相互转换,此文件是用eclipse打包的,如果用eclipse工具可直接导入查看举例,如果用的是idea工具,可以打开bin下的.class文件之后,拖入到idea运行即可
实现JSON数据类型和String类型数据相互转换
常见java中数据类型之间的转换.txt常见java中数据类型之间的转换.txt常见java中数据类型之间的转换.txt
众所周知,字符串是我们开发中最经常见到和使用的,那么有没有一种特别简单的方式把字符串轻松的转化成各种数据类型呢 ? 我将为你解决这个问题,使用最简单快速的方法将字符串转化为各种数据类型并输出显示。
错误 0xc02020f6:数据流任务:列“column”无法在 unicode和非unicode字符串数据类型之间转换。 原因:仔细看了一下,发现有些字段是varchar的,而excel中估计都是nvarchar类型。 方法: 1.修改表字段类型为...
各种实例很全面,概括性很强。 比较全面的介绍各种类型之间的转换。
实现字符串与十六进制数的相互转换,包括中文字符的转换。
CString与其他数据类型的转换 包括char*,COLOREF,16进制,格式化字符串,将字符串分解为子串等
实例实现同类型字符串字符串与16进制数据相互转换的功能。
将任意基本类型转换为二进制字符串的C++代码...
js string转date,js字符串转换成日期,此代码支持将datetime(年月日小时分秒格式)转换为js的Date类型,程序已调试并支持在HTML中运行、代码请见附件。
SQL的datetime类型数据转换为字符串格式大全 2007-10-10 11:11:43 2007/10/10 SELECT convert(char(20),getdate(),120) as TIME_1,convert(char(20),getdate(),111) as TIME_2 将字符串20100426103059转换为...
本书详细阐述了.NET Framwork处理文本的方式,学习如何使用String类和StringBuilder类在.NET 中构建字符串,讲述在字符串和其他数据类型之间转换时所涉及的一些问题,并论述了如何用不同语言显示文本。本书还重点介绍了...