我正在尝试打印一个简单的内容:Hola hi hello
,但出于某种原因,它打印的是我想要的但是我的输出上有一些数字
很抱歉,如果它很容易找到或修复,但我只是从java开始,所以我是一个完整的菜鸟。
我的文件如下:
Example.java
public class Example {
public static void main(String[] args){
Hola ho = new Hola("hola");
System.out.printf("%s hi hello", ho);
}
}
Hola.java
class Hola {
public String name;
public Hola(String name){
this.name = name;
}
}
输出:Hola @ 7852e922你好%
答案 0 :(得分:4)
您必须使用ho.name
:
System.out.printf("%s hi hello", ho.name);
因为ho
将打印对象引用而不是名称。
答案 1 :(得分:1)
您应该覆盖toString()
类的Hola
方法:
class Hola {
public String name;
public Hola(String name){
this.name = name;
}
@Override
public String toString()
{
return this.name;
}
}