快速业务通道

Java中利用字符串连接解决问题 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14

Java中利用字符串连接解决问题

时间:2011-10-02

在应用程序开发过程中,使用的最多的数据类型就是字符串 。在Java语言平台中也是如此。为此掌握 字符串的处理技巧,无疑是一位数据库管理员必须要掌握的技能。笔者这里就给大家介绍如何利用字符串 连接来解决一些实际的问题。

一、 字符串连接概述。

在编写应用程序的时候,我们往往需要将多个字符串连接起来,来完成特定的功能。如现在有两个字 符串变量,分别为名字(变量名为name)和年龄(变量名为age)。现在需要在屏幕上输出“我的名字是某某 ,年龄多少”这个字符串。这个语句该如何写呢?可以写为“我的名字是”+name+“,年龄为”+age。也 就是说,在Java语言中,可以通过+号将多个字符串(包括变量)连接成一个字符串。在屏幕上打印出来或 者将其赋值给一个新的字符串变量。在进行这个字符串连接的时候,大家需要注意一点。也许有些程序员 以前学过其他的开发语言,如SQL语言等等。不同的语言采用的字符串连接字符是不同的。如在SQL中采用 的就是||符号。有时候,在开发应用程序的时候,开发人员可能会混淆。如在利用JAVA语言开发应用程序 ,在代码中需要加入SQL语句从数据库中查询数据。此时就有可能在JAVA代码中和SQL代码中都要用到字符 串连接的情况(SQL代码中要将多个字段的内容连接为一个字段)。由于两个代码所采用的连接符号不同, 所以可能会搞错。

二、 利用字符串连接解决分行问题。

在JAVA开发平台中,可以利用+号将多个字符串合并为一个字符串。不过在实际工作中,这个合并功能 往往还可以帮助系统开发人员解决一些棘手的问题。如根据语法规定,JAVA代码中一句相连的字符串不能 够分开在两行中书写。这是什么意思呢?如现在有一个字串比较长,为“我的名字叫萝卜,今年29岁,在 宁波工作”。如果将这个字符串写在同一行的话,那么这一行会很长,从而影响代码的阅读。但是,笔者 希望其在屏幕上输出或者保存在文件中时,则是在同一行。在这种情况下,该如何处理呢?

确实,这是应用程序开发人员在程序开发过程中经常遇到的一个问题。因为在书写代码时,一个好的 程序开发人员应该兼顾到其代码的美观,这有助于程序开发人员阅读代码。毕竟有时候需要多个程序开发 人员一同完成某个任务。而不能够只完成某个特定的功能就可以了。此时,为了代码的美观与更好的阅读 性,有经验的程序开发人员往往会利用这个+号连接字符来处理这个分行的问题。

由于对于长的字符串,JAVA代码不能够分为两行来写。否则的话,系统就会提示语法错误。遇到这种 情况时,为了提高阅读性,我们往往要求程序开发人员把他们分为两行,同时利用加号将他们连接起来。 如下所示:

“我的名字叫萝卜,今年29岁,”+

“在宁波工作”

也就是说,应用程序开发人员可以使用+号将两个字符串连接起来,然后在+号处换行,从而将两个字 符串连接起来。此时,JAVA编译器会认为这是合法的,允许程序开发人员采用这个技巧来对字符串进行合 理的分行。所以说,利用字符串连接可以有效的解决分行问题。

Java中利用字符串连接解决问题(2)

时间:2011-10-02

三、 利用字符串连接来实现数据类型的自动转换。

在各种开发语言中,都有各种各样的数据类型。有时候为了满足特定的需要,要对他们进行数据类型 的转换。如需要将数字类型的数据转换为字符串类型的数据;再如将某个字符串“2432”转换为数值类型 的数据。在JAVA语言的开发平台中,数据类型的转换有两种方式,分别为隐式转换与显示转换。一般情况 下,从低级数据类型向高级类型的转换,系统会自动进行转换,而不需要程序员进行任何的手工操作或者 指定。这个从低级数据类型向高级数据类型的转换,就叫做隐式转换。在对数据类型进行转换的时候,程 序开发人员需要遵守严格的规则,否则的话容易出现错误。如从低精度数据类型向高精度数据类型转换的 时候,则永远不会发生溢出,通常情况下都会成功。而如果把高精度数据类型转换为低精度数据类型的话 ,则就会发生溢出错误,从而导致部分信息丢失,甚至无法正常转换。

不过在JAVA开发平台中,除了以上这两种转换方式外,还有一种数据类型的转换方法。就是如果某个 字符串和某个变量一起(这个变量可能是数值型的数据或者是日期型的数据)利用+号连接起来时,系统会 自动对这个变量进行转换,会将其转换为字符串数据类型,然后再与原先的字符串连接起来。

也就是说,字符串也可同其他基本数据类型进行连接。如果将字符串同这些数据类型进行连接时(如数 值型的数据),会将这些数据直接转换成字符串。如上面那个例子中“我的名字是”+name+“,年龄为” +age这个字符串,age这个变量为数值型的数据,而其他为字符串的数据。现在程序开发人员就可以利用 这个+号将不同数据类型的字符串连接起来。不过最后的数据类型都会字符串的数据类型。即系统会先将 变量age转换为字符型数据,然后再跟其他字符串数据类型进行连接。那么在后台中,这到底是如何实现 呢?如果在利用+号来进行连接的时候,如果某个变量不是字符串的数据类型,则系统回自动调用一个 toSring方法,将非字符串的数据类型转换成字符串的数据类型,再进行合并。由于这个过程是系统自动 完成的,所以程序开发人员需要特别的注意。一般来说,只要将+号运算符的一个操作数是字符串,编译 器就会将另一个操作数转换成字符串形式。所以程序开发人员应谨慎地将其他数据类型与字符串相连,以 免得到意想不到的结果。如将这个利用+号连接起来的内容,如果其中有个操作数是字符型数据的话,那 么将其赋值给数值型的变量时,就会导致莫名其妙的问题。这种问题很可能存在。因为这个+号,除了可 以连接字符串,还可以用来对数值型的数据进行四则运法运算。所以,在进行四则运法运算时,要确保各 个操作数都是数值型的。否则的话,这个后果就可想而知了。

另外需要再提一句的是,如果在进行加法运算时,需要注意其数据类型的隐式转换。如现在有三个操 作数,其中两个操作数其小数点保留两位;另外一个操作数其小数点保留为1位。而最后赋值给一个变量, 其保留小数位数3位。这就是一个涉及到不同精度的数据类型的数值型数据转换问题。那么最终的结果是 什么呢?笔者这里卖个关,大家若想知道结果的话,可以回去编个程序测试一下。有时候,笔者告诉你们 答案,读者并不一定记得住。所以,笔者在这里就点倒为止。

总之一句话,+号这个连接符号,不仅可以连接各个字符串,而且还用来完成分行与数据类型的隐式转 换。为此笔者建议,各个程序开发人员需要注意这方面细节,一定能够获得不少的收获。

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号