java - 为什么我的 String 方法允许返回 String 和 int 值?

标签 java string methods int

我是 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";
    }

最佳答案

您在两者中都返回一个String。当您+(连接)一个String 和一个int 时,它会返回一个String。这是行不通的:

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

但这会:

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

关于java - 为什么我的 String 方法允许返回 String 和 int 值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56957595/

相关文章:

c# - 如果文本包含以下字符

java - 火焰游戏逻辑使用 java 给出错误结果?

javascript - 如何将一串句子分成两半,分成两个字符串的数组,每个字符串的长度尽可能相似?

java - 编写一个不带参数并返回 true 或 false 的方法 isAbleToFly()?

arrays - Swift 3 中数组平衡点的公共(public)函数

java - 使用java读取文本文件(.txt)的元数据/属性

java - Spring Boot Actuator的DataSourcesHealthIndicatorConfiguration找不到dataSource bean

java - 尝试获取 sun-web-app_2_5 时 glassfish 中的连接超时

java - 初学者 java - 打印表格

c++ - 在实例之间共享方法的局部静态变量有任何风险吗?