Java 中字符串中的大写和小写计数

本文展示了如何通过编码我们的程序或使用 java 8 和 java 8 和 java

isUpperCase() 和 isLowerCase() 在 Java/h2>此方法包括遍历句子的字符并查看每个字符是小写还是大写。我们需要为大写字母创建一个计数器,为小写字母创建一个计数器。在最后,我们显示两个变量的值。

检查字符是小写还是大写,java 包含两个方法:
boolean isUpperCase(char ch:如果字符为大写,则此方法返回 true。如果字符的类别由 Character.getType(ch) 是 UPPERCASE_LETTER.
boolean isLowerCase(char ch):如果字符为小写,则此方法返回 true。如果字符的类别由 Character.getType(ch) is LOWERCASE_LETTER.

public class nombre_majuscule_minuscule {

public static void main(String[] args) {

String string=Java is a programming language”+
面向对象的 Sun Microsystems 创建”;

int nbr_min = nbr_min(字符串);
int nbr_maj = nbr_maj(字符串);

System.out.println(小写字母数”+nbr_min);
System.out.println(大写数字”+nbr_maj);

}

private static int nbr_maj(String string) {
int counter=0;
for(int i = 0; i<字符串.length();i++){
char ch = string.charAt(i);
if(Character.isLowerCase(ch))
counter++;
}
返回计数器;
}

private static int nbr_min(String string) {
int counter=0;
for(int i = 0; i<字符串.length();i++){
char ch = string.charAt(i);
if(Character.isUpperCase(ch))
counter++;
}
返回计数器;
}
}
执行此代码:

小写数字 4
大写数字 68

您可以创建这两种方法的递归版本 nbr_min() 和 nbr_maj()。这次我们决定自己编写 java isUpperCase()isLowerCase(),基于小写和大写字母的 ASCII 代码范围.

private static int nbr_maj_recursive(String string, int i) {
/*if i 达到 string
* return 0
*/
if(string.length()-i==0)
return 0;
/*否则我们检查下一个字符*/
else{
char ch = string.charAt(i);
if(estUpper(ch))
/*递增 i 并计数 1
*大写字母*/
返回 nbr_maj(string, ++i)+1;
}
返回 nbr_maj(string, ++i);
}
方法声明 nbr_min_recursive() 仅在使用方法完成的字符类型检查级别进行更改 isLowercase().

private static int nbr_min_recursive(String string, int i) {
if(string.length()-i==0)
return 0;
else{
char ch = string.charAt(i);
if(isLowercase(ch))
返回 nbr_min(string, ++i)+1;
}
返回 nbr_min(string, ++i);
}
方法  isUppercase() 等效于isUpperCase().

static boolean isUpperCase(char ch){
int ascii = (int) ch;
//[A..Z]
if((ascii>=65 &&ASCII<=90)
//重音字母
||(ASCII>=192 &&ascii<=223))
返回 true;
返回 false;
}
方法 isTiny() 等效于isLowerCase().

static boolean isLowercase(char ch){
int ascii = (int) ch;
//[a..z]
if((ascii>=97 &&ASCII<=122)
//重音字母
||(ASCII>=224 &&ascii<=255))
返回true;
返回 false;
}

Java 8

使用 Java 8,可以计算大写和小写字母的数量。我们将调用该方法 字符() 这将返回一个IntStream 从那里,我们将通过过滤器过滤掉大写和小写字母。最后,我们将使用 count() 查找实例数。

public void compter_majuscules_java8() {

String phrase = This is a test”;

long counter = phrase.chars().filter(Character::isUpperCase).count();
}
要计算小写字母,请执行以下操作:

public void compter_minuscules_java8() {

String phrase = This is a Test”;

long counter = phrase.chars().filter(Character::isLowerCase).count();
}

Google Guava

Guava API 还用于确定字符串中大写和小写字母的总数。您可以考虑:ChartMatcher 作为一组字符,因此当您使用 ChartMatcher.JAVAUPPERCASE 时,它表示任何大写字母。方法 rainFrom() 将删除所有非大写字符。


public void compter_majuscules_java8() {

String phrase = This is a test”;

long counter = CharMatcher.JAVA_UPPER_CASE.retainFrom(phrase).length();
}
要计算小写字母,请执行以下操作:

public void compter_minuscules_java8() {

String phrase = This is a Test”;

long counter = CharMatcher.JAVA_LOWER_CASE.retainFrom(phrase).length();
}