gpt4 book ai didi

java - 在 try-catch block 之后返回 null

转载 作者:行者123 更新时间:2023-12-02 03:59:38 25 4
gpt4 key购买 nike

我在理解下面的访问器方法中代码的含义时遇到了一些困难。 Eclipse 的编译器要求我在 try-catch block 之后有一个 return 语句。这是否意味着我的 getter 方法将始终返回 null,或者如果它不需要被 IndexOutOfBoundsException 捕获,它会返回我尝试检索的项目吗?

public T get(int i)
{
try
{
return bag[i];
}
catch(IndexOutOfBoundsException e) //if(logiSize < i+1)
{
System.out.println("Collection has fewer items than the index you entered!");
System.out.println("Returning null"); //or should I...?
}
return null;
}

任何人都可以帮助我理解这里的含义吗?非常感谢!

最佳答案

您的方法将返回 bag[i]除非执行 return 语句时出现 IndexOutOfBoundsException 异常。在这种情况下,它们的异常会被捕获,并且因为您不会在 catch black 中抛出另一个异常。该方法将继续返回 null .

如果您只需要检查边界,您可以这样做:

public T get(int i, T[] bag) {
if(i < bag.length) {
return bag[i];
}
return null;
}

关于java - 在 try-catch block 之后返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35075899/

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