Java 文本统计算法:字符、字母、数字、空格、标点符号计数
以下是用 Java 编写的算法示例,用于实现对文本的统计功能:
import java.util.Scanner;
import java.io.File;
import java.io.FileNotFoundException;
public class TextStatistics {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println('请输入文本内容:');
String text = scanner.nextLine();
int charCount = countCharacters(text);
int letterCount = countLetters(text);
int digitCount = countDigits(text);
int spaceCount = countSpaces(text);
int punctuationCount = countPunctuation(text);
System.out.println('字符总数:' + charCount);
System.out.println('字母个数:' + letterCount);
System.out.println('数字字符个数:' + digitCount);
System.out.println('空格个数:' + spaceCount);
System.out.println('标点符号个数:' + punctuationCount);
}
public static int countCharacters(String text) {
return text.length();
}
public static int countLetters(String text) {
int count = 0;
for (int i = 0; i < text.length(); i++) {
if (Character.isLetter(text.charAt(i))) {
count++;
}
}
return count;
}
public static int countDigits(String text) {
int count = 0;
for (int i = 0; i < text.length(); i++) {
if (Character.isDigit(text.charAt(i))) {
count++;
}
}
return count;
}
public static int countSpaces(String text) {
int count = 0;
for (int i = 0; i < text.length(); i++) {
if (Character.isWhitespace(text.charAt(i))) {
count++;
}
}
return count;
}
public static int countPunctuation(String text) {
int count = 0;
for (int i = 0; i < text.length(); i++) {
if (Character.isLetterOrDigit(text.charAt(i)) == false && Character.isWhitespace(text.charAt(i)) == false) {
count++;
}
}
return count;
}
}
这段代码首先从键盘输入一段文本,并通过调用相应的统计函数计算字符总数、字母个数、数字字符个数、空格个数和标点符号个数等。每个统计函数使用循环遍历文本,检查每个字符是否满足特定条件(如字母、数字、空格或标点符号),然后相应地增加计数器的值。最后,将每个统计结果打印出来。
原文地址: https://www.cveoy.top/t/topic/bRIv 著作权归作者所有。请勿转载和采集!