《Java入门经典(第7版)》—— 6.5 将其他变量用于字符串中

6.5 将其他变量用于字符串中

虽然可以使用+运算符将两个字符串拼接起来,但更常见的是使用它将字符串和变量拼接起来。请看下面的例子:

int length = 86;
char rating = 'R';
System.out.println("Running time: " + length + " minutes");
System.out.println("Rated " + rating);```
这段代码的输出如下:

Running time: 86 minutes
Rated R`
这个例子说明了将+运算符用于字符串的独特之处:导致不是字符串的变量作为字符串显示出来。length是一个整型变量,其值为86,它显示在字符串“Running time:”和“minutes”之间。System.out.println()语句用于显示一个字符串加上一个整数再加上一个字符串。这条语句之所以能够正常运行,是因为至少开头的部分是字符串。Java语言通过提供这种功能使信息更容易显示。

读者可能想做的一件事情是,将字符串拼接多次,如下例如示:

String searchKeywords = "";
searchKeywords = searchKeywords + "shark ";
searchKeywords = searchKeywords + "hurricane ";
searchKeywords = searchKeywords + "danger";```
这段代码导致变量searchKeywords被设置为“shark hurricane danger”。第1行创建变量 searchKeywords 并将其设置为空字符串,因为双引号之间为空。第 2 行将变量 search Keywords设置为其当前值加上字符串shark;接下来的两行用相同的方式再加上hurricane和danger。

可以看到,在变量后面拼接文本时,变量名将出现两次。Java提供了一种快捷方式来简化该过程,这就是+=运算符。+=运算符将=和+运算符的功能融为一体。对于字符串,它用于在当前字符串后面加上其他字符串。上述searchKeywords示例可以使用+=运算符简化为如下所示:

String searchKeywords = "";
searchKeywords += "shark ";
searchKeywords += "hurricane ";
searchKeywords += "danger";`
这段代码的效果与前面相同:将searchKeywords设置为“shark hurricane danger”。

时间: 2024-11-01 20:47:13

《Java入门经典(第7版)》—— 6.5 将其他变量用于字符串中的相关文章

《Java入门经典(第7版)》—— 导读

前言 作为一名计算机图书作者,我花费了大量的时间呆在书店的计算机图书区,在假装阅读最新一期In Touch Weekly杂志的同时,观察读者阅读图书的行为. 根据我的观察,读者拿起本书并翻到前言后,在他将书放下前往咖啡厅喝杯咖啡前,给我留下的时间大约只有13秒. 因此,这里长话短说:使用Java来进行计算机编程比想象的容易.我本不应该这样说,因为成千上万的程序员正是凭借其Java技能在软件开发.Web应用程序编程和移动app开发领域获得了高薪职位,对他们来说,最不想让老板知道的是,只要坚持不懈并

《Java入门经典(第7版)》—— 6.6 字符串的高级处理

6.6 字符串的高级处理 还有多种其他方式可用于查看字符串变量和修改其值.之所以有这些高级功能,是因为字符串在Java语言中是对象.通过处理字符串对象获得的知识,也适用于其他对象. 6.6.1 比较两个字符串 在程序中经常要测试两个字符串是否相等,为此可在带有两个字符串的语句之中使用equals(),如下所示: String favorite = "chainsaw"; String guess = "pool cue"; System.out.println(&q

《Java入门经典(第7版)》—— 6.9 问与答

6.9 问与答 问:如何将字符串变量的值设置为空? 答:一对双引号之间没有任何文本就表示空字符串.下面的代码创建一个名为georgeSays的字符串变量,并将其值设置为空: String georgeSays = "";``` 问:使用 toUpperCase() 方法好像不能将字符串中的字母全部转换为大写,我哪里操作不正确? 答:调用字符串对象的toUpperCase()方法时,实际上它并未修改该字符串对象,而是创建一个字母全部大写的新字符串,请看下面的语句: String firs

《Java入门经典(第7版)》—— 6.10 测验

6.10 测验 回答下列问题,以测试对字符串理解和掌握的程度. 6.10.1 问题 1.我的朋友要执行拼接操作,需要向权威部门报告吗? a.不,仅在冬季这才是非法的. b.是的,但要等到我将故事卖给TMZ.com再说. c.不,他所做的只是在程序中将两个字符串连接起来. 2.为什么String的首字母要大写,而int等类型名的首字母不需要大写? a.String是一个完整的单词,而int不是. b.和Java中所有的对象一样,String的首字母必须大写. c.Oracle的质量控制做得很糟糕.

《Java安全编码标准》一2.7 IDS06-J从格式字符串中排除用户输入

2.7 IDS06-J从格式字符串中排除用户输入 对Java格式字符串的解释要比对在像C语言这样的语言中更严格[Seacord 2005].当任何转换参数不能匹配相应的格式符时,标准类库实现会抛出一个相应的异常.这种方法降低了被恶意利用的可能性.然而,恶意用户输入可以利用格式字符串,并且造成信息泄露或者拒绝服务.因此,不能在格式字符串中使用非受信来源的字符串. 2.7.1 不符合规则的代码示例 这个不符合规则的代码示例展示了可能出现信息泄露的问题.它将信用卡的失效日期作为输入参数并将其用在格式字

《Java入门经典(第7版)》—— 6.8 总结

6.8 总结 如果你的Credits程序的输出结果与图6.1相同,你的信心也应该增加.通过本书前6章的学习,你现在可以编写一个比较长的Java程序,而且也可以处理一些比较复杂的问题了.字符串是你在每次编程时都会用到的东西.你可以通过多种方式使用字符串来与用户交流.

《Java入门经典(第7版)》—— 6.7 导演及演员名单

6.7 导演及演员名单 接下来,为了加深读者对前面介绍的字符串处理功能的理解,将编写一个Java程序,显示一部电影的导演和演员名单.你应该能够猜到该电影的名字. 返回NetBeans中的Java24项目,然后在com.java24hours包中创建一个名为Credits的Java空文件,在源代码编辑器中输入程序清单6.1中的所有文本,输入完毕之后存盘. 程序清单6.1 Credits程序 1: package com.java24hours; 2: 3: class Credits { 4: p

《Java入门经典(第7版)》—— 6.11 练习

6.11 练习 通过下列练习来复习本章介绍的主题. 编写一个名为Favorite的小型Java程序,将本章中"比较两个字符串"一节的代码放在main()块语句中.测试该程序,确保其输出就像正文中描述的那样,Fin最喜欢的捕鲨工具不是台球杆.测试完毕后,将变量guess的初始值从pool cue改为chainsaw,再看看结果如何.修改程序Credits,将导演和全部演员的名字都用大写字母显示. 本文仅用于学习和交流目的,不代表异步社区观点.非商业转载请注明作译者.出处,并保留本文的原始

《Java 7程序设计入门经典》一2.4 深入解析变量

2.4 深入解析变量 第1章介绍了变量.现在,我们来更详细地考查它们.如前所述,变量可以用以下形式声明: type var-name; 其中type变量的数据类型,var-name是变量名.可以声明任意有效类型的变量,包括之前描述的所有基本类型.在声明变量时,创建这种类型的一个实例.于是,变量的能力由类型决定.例如,boolean类型的变量可以用来存储真值或假值,但不能存储浮点值.另外,变量的类型在其生命周期内不能改变.例如,一个int变量不能变成char变量. Java中的所有变量必须先声明后