结合问题描述和图2,感觉题主应该是想知道,Java如何同时输出自定义的字符串和变量,但是看了看图1又稍微有点疑惑。因为图1本身就提供了解决方案的,不过回想自己初学时也经常一头雾水,所以就尽量讲仔细点,希望可以帮到题主。
简单来说呢就是用加法运算符就可以,比如可以输出a + "小时" + b + "分钟" + c + "秒"
控制台就会把变量的值输出出来,变成2小时3分钟22秒,原因的话题主可以继续往下看。
首先,在Java中,用双引号括起来的都是字符串常量,比如上面的"小时"、"分钟"和"秒"。在控制台输出字符串,双引号里面是什么,控制台就会原原本本的输出什么,而直接输出变量a,控制台会输出a的值而不是"a"这个字符串。
然后,字符串之间是可以直接使用加号"+"运算符的,它的意义相当于是字符串拼接在一起,而且拼接后的结果还是一个字符串,也就是说可以连续拼接,从而达到连词成句的效果。
例如输出"a"+"b"就会输出"ab",注意这里加号是连接符号,本身不会被输出。这是Java的语法,底层是用不定长字符串StringBuilder的append()方法实现的,当然这里初学者不用纠结。
最后,在Java中字符串还可以和基本类型做加法运算,例如输出"a"+1的结果就会输出"a1",注意这里"a"加了双引号,是字符串而不是变量哦。而当变量b的为一个基本类型比如整数2时,"a"+b就会输出a拼接上变量b的值也就是"a2"了。
但是需要注意当a和b都是基本类型比如都是整数时,直接输出a+b得到的就是a和b进行数学加法的值了,此时可以在后面添加+"",也就是拼接一个空字符串。规律就是在连续加法运算过程中,遇只要到了字符串的拼接加法,那结果就会变成字符串,即使后面再有基本类型,也只能继续拼接字符串而不能进行数学加法了。
不知道有没有解决题主的疑惑,手机打代码也不太方便,有什么问题欢迎随时沟通。