Java:返回String或int的方法

时间:2017-03-31 14:12:49

标签: java string methods int

我正在编写的小程序的一部分:

String maxs = "";
int maxi = 0;

在这一部分,我将两个变量定义为intString

public Class(String max){
   try {
           this.maxi = Integer.parseInt(max);
       }catch (Exception e){
           this.maxs = max;
       }
}

我认为这样我将定义其中一个变量,如果String不解析为int,它将保存为普通String。

现在我需要检查一下我需要返回的内容:

private TypeOfReturn getMax(){
    if(this.maxi == 0){
        // return maxs (return String)
    } else if (this.maxs.equals("")) {
        // return maxi (return int)
    } else return null;
}

问题是,如何填写方法getMax()的缺失部分?

它在Java中是否可行?

3 个答案:

答案 0 :(得分:1)

使用Object代替TypeOfReturn 您可以将TypeoOfReturn更改为Object,然后返回相应的类型。

答案 1 :(得分:1)

如果一个字符串是一个数字与否,这是你的程序的主要部分,另一种找出快速的方法是在java 8中使用lambda表达式,如下所示:

String max = "123";
boolean isNumber = max.chars().allMatch(Character::isDigit);
System.out.println(isNumber);

哪个会给你输出

true

答案 2 :(得分:0)

将TypeOfReturn设为String对象类型,并将maxi转换为String,并在else if条件下返回该字符串。

注意:您不能在Same方法中返回int和String。