提取括号中的数字 Java

在编程中,我们经常需要从字符串中提取出特定的信息。而有时,这些信息被包含在括号中,我们需要提取括号中的内容,比如提取括号中的数字。本文将介绍如何使用 Java 提取括号中的数字,并提供了相应的代码示例。

步骤

要提取括号中的数字,我们可以按照以下步骤进行:

  1. 遍历字符串中的每个字符。
  2. 当遇到左括号时,将左括号的位置保存下来。
  3. 继续遍历,直到遇到右括号。
  4. 将右括号的位置保存下来。
  5. 使用保存的左右括号位置,提取括号中的内容。
  6. 将提取的括号内容转换为数字。

下面是一个简单的示例代码,演示了如何提取括号中的数字:

public class ExtractNumberFromParentheses {
    public static int extractNumber(String input) {
        int leftBracketIndex = -1;
        int rightBracketIndex = -1;

        for (int i = 0; i < input.length(); i++) {
            if (input.charAt(i) == '(') {
                leftBracketIndex = i;
            } else if (input.charAt(i) == ')') {
                rightBracketIndex = i;
                break;
            }
        }

        String numberString = input.substring(leftBracketIndex + 1, rightBracketIndex);
        return Integer.parseInt(numberString);
    }

    public static void main(String[] args) {
        String input = "This is a test (123) string.";
        int extractedNumber = extractNumber(input);
        System.out.println("Extracted number: " + extractedNumber);
    }
}

在上面的示例代码中,我们首先定义了一个 extractNumber 方法,它接受一个字符串参数 input。该方法使用两个变量 leftBracketIndexrightBracketIndex 分别保存左括号和右括号的位置。然后,我们使用一个 for 循环遍历字符串中的每个字符,当遇到左括号时,将其位置保存到 leftBracketIndex,当遇到右括号时,将其位置保存到 rightBracketIndex,并且使用 break 结束循环。最后,我们使用 substring 方法提取括号中的内容,并使用 parseInt 方法将提取的内容转换为整数。

main 方法中,我们定义了一个包含括号的字符串 input,然后调用 extractNumber 方法提取括号中的数字,并打印提取的数字。

状态图

下面是一个使用 Mermaid 语法绘制的状态图,描述了提取括号中的数字的过程:

stateDiagram
    [*] --> Start
    Start --> SearchLeftBracket
    SearchLeftBracket --> FoundLeftBracket
    FoundLeftBracket --> SearchRightBracket
    SearchRightBracket --> FoundRightBracket
    FoundRightBracket --> ExtractNumber
    ExtractNumber --> [*]

上面的状态图中,Start 表示开始状态,SearchLeftBracket 表示搜索左括号的状态,FoundLeftBracket 表示找到左括号的状态,SearchRightBracket 表示搜索右括号的状态,FoundRightBracket 表示找到右括号的状态,ExtractNumber 表示提取数字的状态。状态之间的箭头表示状态之间的转换。

结论

通过本文的介绍,我们学习了如何使用 Java 提取括号中的数字。我们使用了一个简单的示例代码来演示提取括号中的数字的步骤,并且使用了 Mermaid 语法绘制了一个状态图,描述了提取括号中的数字的过程。希望本文对你理解如何提取括号中的数字有所帮助。