参见英文答案 > Java equivalent to python “dir”? 2个
在通过在线课程学习java时,我遇到了使用帮助程序类的类型转换.例如:
double d = 5.99;
double do = new Double(d);
int i = do.intvalue();
但是他们没有解释如果我不知道现有方法,我怎么能找到像do.intvalue()这样的方法.在Python中,我可以做一个dir(do),它会列出所有方法.如何在Java中检查相同的内容?
最佳答案
您可以使用javap.
javap java.lang.Double | grep -i int
public static final int MAX_EXPONENT;
public static final int MIN_EXPONENT;
public static final int SIZE;
public int intValue();
public int hashCode();
public int compareTo(java.lang.Double);
public static int compare(double,double);
public int compareTo(java.lang.Object);
例如.如果您看到System.out.println(),但想知道还有什么可用,您可以随时检查
javap -c java.lang.System | grep -i out
public static final java.io.PrintStream out;
public static void setOut(java.io.PrintStream);
4: invokestatic #4 // Method setOut0:(Ljava/io/PrintStream;)V
8: putstatic #98 // Field out:Ljava/io/PrintStream;
然后执行javap java.io.PrintStream