public class ThisTest { public static void main(String args[]) { String x="7"; int y = 2; int z=2; System.out.println(x+y+z); } }
时间: 2023-06-19 17:07:24 浏览: 105
运行结果为 "72"。在此例子中,Java会先将字符串 "7" 和整数 2 相加,得到一个字符串 "72"。然后再将另一个整数 2 加到这个字符串后面,得到最终的结果 "72"。这是因为当 Java 将一个字符串和一个非字符串的值相加时,会将非字符串的值转换为字符串,然后将两个字符串拼接成一个新的字符串。
相关问题
解释一下代码public class Test7 { int x, y; Test7(int x, int y) { this.x = x; this.y = y; } public static void main(String[] args) { Test7 pt1, pt2; pt1 = new Test7(3, 3); pt2 = new Test7(4, 4); System.out.print( pt1.x + pt2.x); } }
这是一个Java程序,它定义了一个名为Test7的类。该类具有两个整型成员变量x和y,还有一个构造函数Test7(int x, int y),用于初始化x和y的值。在main方法中,创建了两个Test7对象pt1和pt2,并将它们的x和y分别初始化为(3,3)和(4,4)。最后,通过System.out.print打印出了pt1.x和pt2.x的和,即7。
对于下列代码: public class Test{ int x; public Test (int x){ this.x = x; } public static void main(String args[]){ Test t1, t2, t3; t1 = new Test(5); t2 = new Test(5); t3 = t2; int n = 5; } } 下列哪些表达式返回值为true?() A. t1 == t2; B. t2 == t3; C. n == t1; D. t1.equals(n)
在这段代码中,t1和t2是两个不同的对象,它们的成员变量x的值相同,t3是指向t2对象的引用。n是一个int类型的变量,所以选项C和D都是不正确的。因此,只有选项A和B需要考虑。
A. t1 == t2;:这个表达式比较的是t1和t2两个对象的引用是否相等,即它们是否是同一个对象。由于t1和t2是两个不同的对象,因此它们的引用不相等,所以这个表达式的返回值为false。
B. t2 == t3;:这个表达式比较的是t2和t3两个对象的引用是否相等。由于t3是指向t2对象的引用,所以它们的引用相等,即它们指向同一个对象,因此这个表达式的返回值为true。
因此,正确的选项是B。
阅读全文