java统计字符串里相同字符出现的次数
java统计字符串里相同字符出现的次数
统计小写字母和大写字母还有数字的个数
import java.util.Scanner; public class Demo5 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入:"); String s = sc.nextLine(); int num1 = 0; int num2 = 0; int num3 = 0; char[] chars = s.toCharArray(); for (int i = 0; i < chars.length; i++) { char c = chars[i]; // 创建一个字符变量接收遍历字符串里的数据 // 进行判断 if (c >= A && c <= Z ) { num1++; } else if (c>=a && c<=z) { num2++; } else if (c>=0 && c<=9){ num3++; } } System.out.println("大写字母字符:"+num1); System.out.println("小写字母字符:"+num2); System.out.println("数字字符:"+num3); } }
统计字符串里相同字母的个数
import java.util.Scanner; public class Demo6 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入:"); String s = sc.nextLine(); int[] data = new int[123]; /* 解题思路 根据Ascii码值进行解题 定义一个大小为123的数组data 先把字符串转换为数组,然后进行遍历,进行判断,比如1的Ascii值为49,这个时候data[49]的值就+1,下边也是同样的道理, 输出的时候,就遍历data这个数组如果data[i]的值为0就不进行输出,否则就输出这个值,然后根据data[i]中的i值输出对应的字母 */ char[] chars = s.toCharArray(); for (int i = 0; i < chars.length; i++) { if (chars[i] >= 48 && chars[i] <= 57) { data[chars[i]]++; } if (chars[i] >= 65 && chars[i]<=90) { data[chars[i]]++; } if (chars[i]>=97 && chars[i]<=122) { data[chars[i]]++; } } move(48,57,data); move(65,90,data); move(97,122,data); } // 定义一个方法,将结果进行输出 public static void move(int min,int max,int data[]) { for (int i = min; i <=max; i++) { if(data[i] == 0) { continue; } char ch = (char)i; // 将Ascii值转换为相应的字母 System.out.println("字母:"+ch+"出现的次数"+data[i]); } } }
下一篇:
c++进阶教程:我见过最好的c++教程