如何创建一个返回String和整数的get方法?

问题描述 投票:1回答:3

我正在尝试创建一个getCalories方法,其中我必须返回一个字符串和一个整数但我收到一个错误,说一个不能转换为另一个。我该如何工作?

package task14;

import java.util.ArrayList;

public class Meal {

    ArrayList<Ingredient> ingredient = new ArrayList<Ingredient>();

    public Meal() {};

    public Meal(ArrayList<Ingredient> ingredient) {
        this.ingredient = ingredient;
    }

    **public int getCalories() {
        return "This meal has" + Ingredient.numberOfCalories;
    }**

    public String toString() {

        return ingredient.toString();

    }
}
java methods getter
3个回答
2
投票

如果您尝试返回“此餐有10”这样的句子,则需要将方法的返回类型更改为String

如果你想要两者兼顾 - 不要。没有理由为什么无论你在哪里调用getCalories都无法在它用于之前放置那段文本。

另外,在Meal类中仅打印一种成分的卡路里值似乎没有多大意义。也许你的意思是循环所有Ingredients并在返回总数之前加总卡路里?


1
投票

首先,在方法public int getCalories()我将改变intString。然后在令牌return "This meal has" + Ingredient.numberOfCalories;之后排队+你可以用numberOfCalories解析Integer.toString(Ingredient.numberOfCalories)的值。它将返回一个字符串,希望它对你有用。


1
投票

如果需要返回多个可能包含不同类型的值,则一种方法是创建一个实用程序类,并定义相应的类型字段,并定义您的方法以返回该类型的实例。

© www.soinside.com 2019 - 2024. All rights reserved.