这怎么合法
System.out.println("".valueOf(1121997));
这是非法的
System.out.println(1.valueOf("1121997"));
最佳答案
因为“”是字符串。字符串类具有valueOf方法,因此可以调用它。
对于您的老问题,
System.out.println( 1.valueOf("1121997"));
这里1是原始整数值,而不是Integer Wrapper类。您不能在原始数据类型上调用method。
对于您更新的问题,
System.out.println((Integer) 1.valueOf("1121997"));
在这里,您需要在(Integer)1处加上其他()。
System.out.println(((Integer) 1).valueOf("1121997"));
另外,valueOf()是静态方法。用实例调用它不是一个好习惯。您应该使用类似的类名直接调用它
Integer.valueOf("1121997");
关于java - 在实例值上调用此静态方法怎么错?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43834585/