相关疑难解决方法(0)

Java打印包含整数的String

我有一个疑问如下.

public static void main(String[] args) throws IOException{
  int number=1;
  System.out.println("M"+number+1);
}
Run Code Online (Sandbox Code Playgroud)

输出: M11

但我想把它打印成M2而不是M11.我无法对++进行编号,因为变量与for循环有关,如果我这样做会给我不同的结果,并且无法使用另一个print语句打印它,因为输出格式会发生变化.

请求您帮我正确打印.

java string println

11
推荐指数
3
解决办法
6万
查看次数

带有+运算符的Java String Concatenation

我对String连接感到困惑.

String s1 = 20 + 30 + "abc" + (10 + 10);
String s2 = 20 + 30 + "abc" + 10 + 10;
System.out.println(s1);
System.out.println(s2);
Run Code Online (Sandbox Code Playgroud)

输出是:

50abc20
50abc1010

我想知道为什么20 + 30在两种情况下都加在一起,但是10 + 10需要括号才能被添加(s1)而不是连接到字符串(s2).请解释String运算符如何在+这里工作.

java string

6
推荐指数
1
解决办法
2076
查看次数

Java 在评估表达式时的自动类型转换

我想出了以下几点:

  1. 1 + 2 + "3" 结果为 "33"
  2. 1 + 2 + '3' 结果是 54,这是一个整数。

我无法理解 Java 在评估表达式时遵循哪些转换规则。

对我来说,Java 似乎对类型层次结构中最近的类型进行了扩展转换。在第一种情况下,int -> string发生,而char -> int在后一种情况下。

有人可以给出Java在这些情况下使用的正式规则吗?谢谢!

java

1
推荐指数
2
解决办法
169
查看次数

标签 统计

java ×3

string ×2

println ×1