请选择下面程序正确的输出结果( ) public class Main{ public static void main(String args[ ]){ String a = new String("A"); String b = new String("B"); mb_operate(a,b); System.out.println(a + "." + b); } static void mb_operate(String x,String y){ x.concat(y); y=x; } } A. A.B B. A.A C. AB.AB D. AB.B
时间: 2023-06-03 08:05:48 浏览: 388
答案是 A. A.B。在 mb_operate 方法中,x.concat(y) 只是将字符串 AB 创建,但是没有给任何一个变量赋值,所以 a 的值仍然是 "A",而 y=x; 将 y 指向同一块内存地址,所以 b 的值是 "B"。
相关问题
public class RunQuiz { public static void main(String[] args) {} Question q = new Question(); }为什么看不到窗口?
您的代码有一个问题,它在 `main` 方法中没有执行任何语句,因此不会创建 `Question` 实例。您需要将创建 `Question` 实例的语句放在 `main` 方法中,例如:
```
public class RunQuiz {
public static void main(String[] args) {
Question q = new Question(); // 创建 Question 实例
}
}
```
这样运行 `main` 方法时,将创建 `Question` 实例并显示窗口。
Java:以下程序输出的结果是 public class Main{ public static void main(String[] args) { byte b1 = 3; byte b2 = 126; byte b3 = b1 + b2; System.out.println(b3); } }
这个程序会报编译错误,因为 `byte b1 = 3;` 和 `byte b2 = 126;` 都是 byte 类型的变量,而在 `byte b3 = b1 + b2;` 这一行代码中,b1 和 b2 会被自动转换为 int 类型进行计算,计算结果也是 int 类型,而不能直接赋值给 byte 类型的变量 b3。因此需要将计算结果进行强制类型转换,正确的代码应该是:
```
public class Main{
public static void main(String[] args) {
byte b1 = 3;
byte b2 = 126;
byte b3 = (byte)(b1 + b2);
System.out.println(b3);
}
}
```
输出结果为 -127。