Java “1”范围内的任意整数;如果;陈述

Java “1”范围内的任意整数;如果;陈述,java,if-statement,Java,If Statement,也许我在用大锤打苍蝇,但是 我在做这个练习 给定2个整数,a和b,返回它们的和。然而,在[13,19]范围内的“青少年”价值观是额外幸运的。因此,如果其中一个值是青少年,只需返回19 这就是我的答案 public int teenSum(int a, int b) { if (a >= 13 && a <= 19) return 19; if (b >= 13 && b <= 19) return 19; else

也许我在用大锤打苍蝇,但是

我在做这个练习

给定2个整数,a和b,返回它们的和。然而,在[13,19]范围内的“青少年”价值观是额外幸运的。因此,如果其中一个值是青少年,只需返回19

这就是我的答案

public int teenSum(int a, int b)
{
    if (a >= 13 && a <= 19) return 19;
    if (b >= 13 && b <= 19) return 19;
    else return a + b;
}
public intteensum(inta,intb)
{

如果(a>=13&&a=13&&b,则可以使用逻辑OR获得逻辑等效表达式:

if ((a >= 13 && a <= 19) || (b >= 13 && b <= 19)) return 19;

if((a>=13&&a=13&&b)当然。通过将两个if语句作为保护子句,您真正做的是逻辑OR。因此:

if ((a >= 13 && a <= 19) || (b >= 13 && b <= 19)) return 19;

if((a>=13&&a=13&&b如果使用三元运算符(
?:
),则可以使用零
if
语句来实现。类似于

public int teenSum(int a, int b)
{
    return (a > 12 && a < 20) || (b > 12 && b < 20) ? 19 : a + b;
}
public intteensum(inta,intb)
{
返回(a>12&&a<20)|(b>12&&b<20)?19:a+b;
}

使用
?:
三元运算符,可以完全不使用
if
语句来执行此操作

return (a >= 13 && a <= 19) || (b >= 13 && b <= 19) ? 19 : a + b;
返回(a>=13&&a=13&&b