0

我正在尝试使用反射来返回基于自动生成的 String 的 int :

try {
    ItemWeight myObject = new ItemWeight();
    Method method = ItemWeight.class.getMethod(easyItem.replace(" ", ""));
    weight = (Integer) method.invoke(myObject);

        } catch (Exception e) {
            e.printStackTrace();

        }

但是,如果字符串以数字开头,则会引发错误:

public int 0PtsAllowed()
 {
 return 14;
 }

编译时返回以下内容:令牌“0”上的语法错误,删除此令牌

任何帮助将不胜感激。

谢谢,乔什

4

1 回答 1

0

我很惊讶它可以编译。 0PtsAllowed不是合法的 Java 标识符。你当然不能调用它。

ptsAllowed0会这样做,但就是说,我质疑你的设计。怎么样ptsAllowed(int points)

[编辑] 深夜,我刚刚注意到你确实有一个编译器错误,但推理是成立的。该睡了...

于 2013-02-23T22:10:39.607 回答