Java程序筛选控制台输入中的整数

需积分: 48 2 下载量 34 浏览量 更新于2024-09-14 1 收藏 917B TXT 举报
"该代码示例是用Java编写的一个简单程序,目的是从用户通过控制台输入的一串字符串中筛选并输出整数。程序利用正则表达式匹配字符串中的数字,并打印出来。" 在这个Java程序中,主要涉及以下几个知识点: 1. **控制台输入**:在Java中,我们可以使用`java.io`包中的`BufferedReader`类来从控制台读取用户的输入。在这个程序中,首先创建了一个`InputStreamReader`对象`isr`,然后通过`isr`创建了`BufferedReader`对象`br`。`BufferedReader`提供了`readLine()`方法,用于读取用户输入的一整行文本。 2. **字符串操作**: - `substring(i, j)`:这个方法用于从字符串中提取子串,它返回一个新的字符串,其内容是从原始字符串的第`i`个字符(包含)到第`j`个字符(不包含)。 - `length()`:获取字符串的长度,即字符串中字符的数量。 3. **正则表达式**:在Java中,可以使用`matches()`方法来检查一个字符串是否符合特定的正则表达式。在这段代码中,`String intPatten = "[0-9]"`定义了一个正则表达式,它匹配任何单个的数字字符(0到9)。 4. **数组操作**:`str1`是一个字符串数组,初始化为与输入字符串`str`相同长度。虽然在这个例子中,数组并没有实际被用来存储结果,但在处理字符串中的每个字符时,它起到了辅助的作用。 5. **循环遍历**:`for`循环用于遍历输入字符串`str`的每一个字符,将每个字符单独存入`str1`数组,并检查每个字符是否是整数。如果字符是整数,就使用`System.out.println()`打印出来。 6. **异常处理**:`try-catch`块用于捕获可能发生的`IOException`。在读取用户输入或进行I/O操作时,可能会出现此类异常,因此需要妥善处理。`e.printStackTrace()`会打印出异常的堆栈跟踪信息,这对于调试非常有用。 7. **类与方法**:`FindInteger`是定义的Java类,其中包含一个`main`方法,这是所有Java应用程序的入口点。`main`方法接收一个字符串数组`args`作为参数,但在这个例子中,没有使用这些参数。 这个程序虽然简洁,但它展示了Java中处理用户输入、字符串操作、正则表达式匹配以及异常处理的基本概念。对于初学者来说,这是一个很好的实践案例,可以帮助理解这些基本编程概念。