java find 方法_Java Scanner findLine()方法

Java Scanner findLine()方法

java.util.Scanner.findInLine(Pattern pattern) 方法试图找到指定的模式在忽略分隔符的下一次出现。如果模式是下一行分隔符之前找到,则scanner执行匹配的输入,并返回与该模式匹配的字符串。如果没有这样的模式在输入到下一行分隔符检测到,则返回null并且scanner的位置不变。此方法可能阻塞等待输入相匹配的模式。

1 语法

public String findInLine(Pattern pattern)

2 参数

pattern:要扫描的模式

3 返回值

此方法返回匹配指定模式的文本。

4 示例

package com.yiidian;

/**

* 一点教程网: http://www.yiidian.com

*/

/**

* java.util.Scanner.findInLine(Pattern pattern)方法的例子

*/

import java.util.*;

import java.util.regex.Pattern;

public class Demo {

public static void main(String[] args) {

String s = "Hello World! 3 + 3.0 = 6";

// create a new scanner with the specified String Object

Scanner scanner = new Scanner(s);

// find a pattern of any letter plus "ello"

System.out.println("" + scanner.findInLine(Pattern.compile(".ello")));

// print the next line of the string

System.out.println("" + scanner.nextLine());

// close the scanner

scanner.close();

}

}

输出结果为:

Hello

World! 3 + 3.0 = 6

新建一个名为`WordCount.java`的文件,通常是在Java编程环境中创建用于处理文本计数任务的一个简单示例。这个程序可能会是一个简单的命令行工具,它读取一个输入文件,然后计算并输出其中每个单词出现的次数。以下是一个基本的步骤和代码结构: 1. **打开集成开发环境(IDE)**:如Eclipse、IntelliJ IDEA或VS Code等,选择"New File"或"New Project"。 2. **命名文件**:右键点击项目结构中的"src"目录,然后选择"New" -> "Java Class",在弹出的窗口中输入类名"WordCount",确保它位于合适的包路径下(例如com.example.wordcount)。 3. **编写代码**: - 首先,添加`import`语句,如`import java.io.File;` 和 `import java.util.Scanner;`,以便使用文件操作和输入流。 - 定义一个主函数`public static void main(String[] args)`作为程序入口点。 - 使用`Scanner`从命令行参数读取输入文件名。 - 创建一个HashMap存储单词及其出现次数。 - 逐行读取文件内容,将每一行分割成单词,并更新HashMap。 - 输出结果,比如遍历HashMap打印每个单词及其计数。 ```java import java.io.File; import java.io.FileNotFoundException; import java.util.HashMap; import java.util.Map; import java.util.Scanner; public class WordCount { public static void main(String[] args) { if (args.length != 1) { System.out.println("Usage: java WordCount <input_file>"); return; } String inputFile = args[0]; Map<String, Integer> wordCounts = new HashMap<>(); try (Scanner scanner = new Scanner(new File(inputFile))) { while (scanner.hasNextLine()) { String line = scanner.nextLine(); for (String word : line.split("\\s+")) { // 分割单词,忽略空格 word = word.toLowerCase(); // 可能需要转换为小写统一计数 wordCounts.put(word, wordCounts.getOrDefault(word, 0) + 1); } } } catch (FileNotFoundException e) { System.err.println("Error: Could not find file " + inputFile); e.printStackTrace(); } for (Map.Entry<String, Integer> entry : wordCounts.entrySet()) { System.out.println(entry.getKey() + ": " + entry.getValue()); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值