gpt4 book ai didi

java - 在类中返回所需的值 - Java

转载 作者:行者123 更新时间:2023-11-29 06:35:05 24 4
gpt4 key购买 nike

我对返回所需的值感到困惑。这是我的代码的一部分:

public class StrNum {

public static int getInt(String input) {
String str = new String(input);
int result;

if (str.startsWith("b")) {
str = str.substring(1);
result = Integer.parseInt(str, 2);
}
else if (str.startsWith("x")) {
str = str.substring(1);
result = Integer.parseInt(str, 16);
}

现在,我需要返回的是结果。当我写 return result; 时,它要求我初始化变量(我知道它还没有被初始化)。当我在 if 语句中使用 return result 时,Eclipse 告诉我必须返回一个值。我哪里傻了?我将不胜感激。

最佳答案

如果 Str 不是以 "b""x"开头,方法 getInt() 将返回什么?那将是一个错误,因为 result 没有被初始化。您可以通过使用您希望在这种情况下返回的值来初始化 result 来解决此问题:

int result = -1; // for example

编辑:

由于您想使用input 来确定该数字将被解析为二进制还是十六进制,我建议您添加一个else 语句来解析其中的数字默认以 10 为基数:

if (...)
// ...
else if (...)
// ...
else
result = Integer.parseInt(Str);

注意:

  • 尽量遵循 Java 命名约定。对变量/方法使用类似 someVar 的名称,对类使用类似 SomeClass 的名称。
  • 没有必要创建一个新的字符串实例 Str,除非您稍后要在同一方法中使用原始输入。
  • 要创建具有相同内容的String,您可以简单地做

    String str = input;

关于java - 在类中返回所需的值 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22488283/

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