`
844604778
  • 浏览: 573503 次
文章分类
社区版块
存档分类
最新评论

java统计Scanner输入的行数,制表位数以及空格数

 
阅读更多

最近在学C语言,每写一个C语言程序,就再写一个java的实现,发现简单的小程序,还是C语言简单啊。。。java写起来要复杂繁琐的多。。

说到统计,通常的需求是统计一篇文章的各种信息数据。但神需求无处不在,只要技术使用正确就一定可以解决的。

直接上代码。

import java.util.*;
class  Test1
{
	public static void main(String[] args)
	{
		Scanner sc =new Scanner(System.in);
		String str=sc.nextLine();
		int n=0,m=0,p=0;
		while(sc.hasNext()&&!str.equals("EOF"))
		{
			++n;
			for(int i=0;i<str.length();i++)
			{
				if(str.charAt(i)=='\t')
				++m;
				if(str.charAt(i)==' ')
				++p;
			}
			str=sc.nextLine();	
		}
		System.out.println("行数为"+n+"行,制表位有"+m+"个。空格有"+p+"个");
	}
}
另外判断制表位和空格的时候也可以通过str.indexOf("\t")和str.indexOf(" ")

运行结果如下:


至于为啥在EOF后面还得输入任意字符呢?

因为程序一开始就是定义了一个Scanner接受用户输入,虽然之前的EOF让程序退出统计的那个while循环了,但由于输入完EOF后,我们又敲了一个回车,所以程序会再接受一次输入才能往下运行,输出统计数据。

这个程序也可以用上正则表达式,但有点高射炮打蚊子的感觉喽~

分享到:
评论

相关推荐

    36.java数据输入Scanner.zip

    36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入Scanner.zip36.java数据输入...

    根据输入行数,打印出杨辉三角形.docx

    1. 键盘接收行数:使用Scanner类来接收用户输入的行数。 2. 计算杨辉三角形:使用二维数组来存储杨辉三角形,然后通过循环来计算杨辉三角形的每个元素。 3. 打印杨辉三角形:使用循环来打印杨辉三角形,每行的数字都...

    burpsuite插件之Java Deserialization Scanner使用方法1

    Java Deserialization Scanner 是一款针对Java反序列化漏洞的检测和利用工具,它是Burp Suite中的一个插件。这款插件的目的是帮助安全研究人员检测应用程序中可能存在的Java反序列化漏洞,这些漏洞可能导致远程代码...

    Java基础之Scanner键盘录入.docx

    Scanner 是 Java 提供的一个类工具,用于从控制台读取用户的输入。使用 Scanner 前需要导入包,语句为 `import java.util.Scanner;`。创建 Scanner 对象时需要指定输入源,通常使用 `System.in` 作为输入源,例如 `...

    Java中Scanner类的用法

    这些方法都会自动跳过空白符(例如空格、制表符和换行符等),并且会一直等待用户输入直到读取到有效数据为止。 ##### 3. 检查是否还有输入 `Scanner`还提供了一些方法来检查是否还有可用的输入,例如: - `...

    Java中Scanner用法.doc

    `Scanner`类作为Java SDK 1.5中引入的新特性,为开发者提供了一种简单直观的方式来读取用户输入和解析文本文件中的数据。相比于之前的`StringTokenizer`和`Matcher`类,`Scanner`不仅功能更加强大,而且使用起来更加...

    Java Scanner、File、PrintWriter使用实例

    Java Scanner File PrintWriter使用实例

    java输入语句scanner.docx

    Java `Scanner` 类还提供了其他方法来处理不同类型的输入,例如 `nextDouble()` 用于读取双精度浮点数,`nextLong()` 用于读取长整型数字,以及 `nextBoolean()` 用于读取布尔值。此外,`Scanner` 还可以处理日期和...

    Java SE程序 Scanner类

    Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序 Scanner类Java SE程序...

    JAVA Scanner输入.pdf

    JAVA Scanner输入.pdf

    Scanner类输入--Eclipse

    在Java编程语言中,`Scanner`类是Java.util包下的一个核心类,它为我们提供了从标准输入设备(如键盘)或者文件中读取用户输入数据的功能。`Scanner`类是进行基本类型数据输入的主要工具,使得程序员能够方便地处理...

    java中Scanner类的接收方法

    在Java编程语言中,`Scanner`类是Java.util包下的一个重要的输入处理工具,它用于从各种源(如系统输入流、文件、字符串)读取基本类型的数据和字符串。`Scanner`类提供了丰富的接收方法来方便程序员进行输入操作。...

    8.javaScanner类.zip

    8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.javaScanner类.zip8.java...

    java输入语句scanner 使用方式

    ### Java 输入语句 `Scanner` 使用详解 #### 一、`Scanner` 类简介 在 Java 编程语言中,`Scanner` 类是一个非常实用且重要的类,它位于 `java.util` 匢中。该类的主要功能是用于从各种输入源(如键盘、文件或字符...

    Java-Junit单元测试无法使用scanner输入和I-O流的解决方案.docx

    ### Java-Junit单元测试无法使用scanner输入和I-O流的解决方案 #### 一、单元测试的概念及重要性 单元测试是一种软件开发中的测试方法,它主要用于验证软件中的最小可测试单元或组件是否按预期工作。在Java编程...

    使用JAVA,判断数据奇数和偶数的个数

    `Scanner`类是Java.util包的一部分,可以方便地处理各种类型的数据输入,包括整数。以下是一个简单的例子: ```java import java.util.Scanner; public class Main { public static void main(String[] args) { ...

    java Scanner输入数字、字符串过程解析

    Java Scanner输入数字、字符串过程解析 Java Scanner是一种功能强大且灵活的输入工具,能够从不同的输入源中读取数据,包括键盘输入、文件输入、网络输入等。下面是对Java Scanner输入数字、字符串过程的详细解析:...

    代码行数统计器(Java实现)

    代码行数统计器是一种工具,通常用于评估软件项目的规模,帮助开发者了解代码库的大小以及维护工作的复杂性。本项目是使用Java编程语言实现的,它允许用户统计不同类型的源代码文件中的行数,同时自动忽略空行。下面...

    java字数统计程序

    Java字数统计程序是一种利用Java编程语言开发的小型应用程序,主要功能是对用户输入的文本进行分析,计算其中的字符数量,通常包括汉字、字母、数字以及其他符号。在文本处理领域,这种工具非常实用,比如在文章编辑...

    Java Scanner输入两个数组的方法

    "Java Scanner输入两个数组的方法" Java Scanner是一个强大的输入工具,可以从控制台、文件或其他流中读取数据。今天,我们将讨论如何使用Java Scanner输入两个数组的方法。 在了解Java Scanner输入两个数组的...

Global site tag (gtag.js) - Google Analytics