永发信息网

请问为什么自动生成的return语句在控制台没有任何输出,而使用System.out,println则能正常输出

答案:2  悬赏:0  手机版
解决时间 2021-02-07 19:48
  • 提问者网友:兔牙战士
  • 2021-02-07 04:00
package com.suse.inject.constructor;

public class User {

private String username;
private int age;
private int money;

public User() {
super();
}

public User(String username, int age, int money) {
super();
this.username = username;
this.age = age;
this.money = money;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

public int getMoney() {
return money;
}

public void setMoney(int money) {
this.money = money;
}

@Override
public String toString() {
return "User [username=" + username + ", age=" + age + ", money="
+ money + "]";

System.out.println("[username=" + username + ", age=" + age + ", money="
+ money + "]");
}

}
最佳答案
  • 五星知识达人网友:怀裏藏嬌
  • 2021-02-07 04:19
return只是程序结束时,对上一层方法的一种反馈,当你调用toString方法,结束返回到调用它的方法的代码段继续执行,这个行为可以带着一个值,这个就是返回值。你可以这样System.out.println(new User().toString()); 这样就能输出return的字符串了。pringln方法参数是String,如果传入参数是一个非基本类型的对象,就会隐式地调用它的toString方法,所以new User()后面这个.toString()可以省略。
全部回答
  • 1楼网友:三千妖杀
  • 2021-02-07 04:54
您好 楼主 如果觉得有用的话 给个采纳吧 您先去看看系统的jdk用的是什么编码 然后 properties pro=system.getproperties(); system.out.println(pro.getproperty("file.encoding")); 如果不是需要的,则这样 pro.setproperty("file.encoding","utf-8"); 在控制面板里面修改区域设定和字符集设定 然后重新启动下电脑就好啦 希望能帮到您
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯