0

好的,我需要将字符串“H”更改为“KeyEvent.VK_+(输入的字符串 H)”并且由于某种原因,我无法将变量从 H 更改为主类中的新字符串。但它确实在其他类中发生了变化。任何帮助都会很棒。

主班

Convert ConvertObject = new Convert();
String word = "H"
ConvertObject.Convert(word);
System.out.println(word); // this keeps printing out H but it needs to print out  
                                                                 "KeyEvent.VK_H"

转换类

public static String Convert(String x) {
    x = "KeyEvent.VK_" + x;
    System.out.println(x);
    return x;
4

2 回答 2

7

由于 Java 使用按值传递,因此方法中的任何修改都只对局部变量进行。您需要保存方法的结果才能获得所需的效果:

word = ConvertObject.Convert(word);
于 2013-05-11T22:27:10.233 回答
0

Java 中的所有内容都是按值传递的,这意味着将 String 的副本传递给您的方法并更改,而不是 Main 类中的原始对象。

于 2013-05-11T22:30:17.233 回答