如何打印2个int但没有添加?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何打印2个int但没有添加?相关的知识,希望对你有一定的参考价值。
我知道这似乎是一个愚蠢的问题(对不起)。基本上这就是我想要做的:
int a = 5;
int b = 3;
System.out.print(a+b);
这会给我8,但除了在它之间放一个空字符串以便打印5和3(而不是通过将int转换为字符串)之外还有其他方法吗?
非常感谢。
答案
print方法只是将其参数转换为字符串并写出结果。因此,如果要显示连接的两个数字,则需要通过将它们转换为字符串(显式地或使用“”,如您已经提到的)来自己完成此操作。
如果你想避免自己构建字符串,你可能需要使用printf()方法:
System.out.printf("%d%d", a, b);
另一答案
尝试
System.out.print(a+""+b)
要么
System.out.print(a+" "+b)
如果你想要它们之间的空间
另一答案
Java将始终执行算术运算符。要避免此行为,您需要将数字转换为字符串。
这应该适合你:
System.out.println("" + a + b);
由于开头是空字符串,Java将把+解释为连接运算符,并将变量的值与空字符串连接起来。
另一答案
- 用户显式字符串转换(不那么优雅的解决方案):
System.out.print(new Integer(a).toString()+b);
- 使用对System.out.print的顺序调用(不会添加新行):
System.out.print(a); System.out.print(b);
- 使用java.lang.StringBuilder:
import java.lang.StringBuilder; ... StringBuilder sb = new StringBuilder(); sb.append(a); sb.append(b); System.out.print(sb.toString());
另一答案
您需要将println方法中的参数转换为字符串文字,然后java编译器会将其识别为字符串,并且不会添加两个整数。
System.out.println(a+""+b);
或使用格式方法
System.out.format("%d%d",a,b);
以上是关于如何打印2个int但没有添加?的主要内容,如果未能解决你的问题,请参考以下文章