【问题标题】:Why does my String method allow a return value of a String and int? [duplicate]为什么我的 String 方法允许返回 String 和 int 的值? [复制]
【发布时间】:2019-11-19 07:22:22
【问题描述】:

我是 Java 新手,目前正在学习方法在类中的工作方式。我写了一个简单的方法,它应该返回一个 String 值,但是当我将它与一个 int 值连接时它仍然有效。

我尝试翻转返回值以从 int 开始,这也有效。 java 是否知道将 int 值转换为 String 值?

public class MyOwnJavaProject 
{

    int favoriteNumber;

....
// This method worked
public String showFavNumber()
    {
        return "My favorite number is " + this.favoriteNumber;
    }

// This method also worked
public String showFavNumber()
    {
        return this.favoriteNumber + " is my favorite number";
    }

【问题讨论】:

    标签: java string methods int


    【解决方案1】:

    您在两者中都返回了 String。当您 +(连接)Stringint 时,它会返回 String。这行不通:

    public String showFavNumber()
    {
        return this.favoriteNumber;
    }
    

    但这会:

    public int showFavNumber()
    {
        return this.favoriteNumber;
    }
    

    【讨论】:

    • 啊,我明白了。所以每当我使用一个 int 值然后将它连接起来,那么整个返回值就变成了一个字符串?
    • @MatthewMortensen 正确...
    • 程序员经常使用它作为将 int 转换为 String 的便捷方式。例如,返回 this.favoriteNumber + "";还有其他方法可以做到这一点,但效果很好。
    猜你喜欢
    • 2017-12-21
    • 2019-10-12
    • 2018-05-09
    • 1970-01-01
    • 2019-02-12
    • 2013-02-26
    • 2017-08-25
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多