gpt4 book ai didi

java - 从 void 和 boolean 方法返回多个值

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:07:42 25 4
gpt4 key购买 nike

我有以下问题:有一个计算两个整数之间相似度的 boolean 静态方法,我被要求返回 4 个结果:

  1. 不改变方法的返回类型,它应保持 boolean 值。
  2. 不更新/使用外部变量和对象的值

这是我到目前为止所做的(我不能将返回值从 boolean 值更改为其他值,例如 int,我必须只使用 boolean 值):

public static boolean isSimilar(int a, int b) {
int abs=Math.abs(a-b);
if (abs==0) {
return true;
} else if (abs>10) {
return false;
} else if (abs<=5){
//MUST return something else, ie. semi-true
} else {
//MUST return something else, ie. semi-false
}
}

最佳答案

以下无论如何都是不好的做法,但如果您可以 try catch 异常,您实际上可以按照约定定义一些额外的输出。例如:

public static boolean isSimilar(int a, int b) {
int abs = Math.abs(a-b);
if (abs == 0) {
return true;
} else if (abs > 10) {
return false;
} else if (abs <= 5){
int c = a/0; //ArithmeticException: / by zero (your semi-true)
return true;
} else {
Integer d = null;
d.intValue(); //NullPointer Exception (your semi-false)
return false;
}
}

关于java - 从 void 和 boolean 方法返回多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33645569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com