题目一:获取指定字符串中,大写字母、小写字母、数字的个数。
String str1 = "*Aab1B cd/e2f"; int bigCount = 0; int smallCount = 0; int numberCount = 0; char[] array = str1.toCharArray(); for (int i = 0; i < array.length; i++) { if (array[i] >= 65 && array[i] <= 90)// 判断大写 // if (ch>='A' && ch<='Z') {这样也行的 { bigCount++; } else if (array[i] >= 97 && array[i] <= 122)// 判断小写 // } else if (ch>='a' && ch<='z') { { smallCount++; } else if (array[i] >= 48 && array[i] <= 57)// 判断数字 // } else if (ch>='0' && ch<='9') { { numberCount++; } } System.out.println(bigCount); System.out.println(smallCount); System.out.println(numberCount); }
题目二: 字符串的第一个大写字符变为小写,后面的字符变为大写。
public class Person { public static void main(String[] args) { // 字符串的第一个大写字符变为小写,后面的字符变为大写 changeLetter("*fATzb1B cd/e2f"); changeLetter("*DETzb1B cd/e2f"); changeLetter("*aCTzb1B cd/e2f"); } public static void changeLetter(String str) { int index = 0; char[] array = str.toCharArray(); for (int i = 0; i < array.length; i++) { if (array[i] >= 'A' && array[i] <= 'Z')// 判断大写 { index = i; break; } } String start = str.substring(0, index + 1).toLowerCase(); String end = str.substring(index + 1).toUpperCase(); str = start + end; System.out.println(str); } }
l 题目三:查询大字符串中,出现指定小字符串的次数。如“hellojava,nihaojava,javazhenbang/java”中查询出现“java”的次数。
public class Person { public static void main(String[] args) { searchString("hellojava,nihaojava,javazhenbang/java", "java"); } public static void searchString(String str, String str1) { int count = 0; // 判断出现的位置是否为-1, // 如果位置等于-1,说明大串中已经查询不到小串了;如果位置不等于-1,那么,进行循环,完成次数累加与修改大串的操作 while ((str.indexOf(str1)) != -1) { str = str.substring((str.indexOf(str1)) + str1.length()); count++; } System.out.println(count); } }