第11次作业--字符串处理
题目1:编写一个应用程序,统计输入的一个字符串中相同字符的个数,并将统计结果输出。
Test类:一个主方法
1 /** 2 * 只有一个主方法 3 * 用nextLine()方法接收字符串赋给str对象 4 * 用str.length()方法控制for循环次数 5 * int num=0;对变量num进行初始化 6 * 利用str.indexOf()方法找出字符第一次的位置 7 * 利用str.substring()方法截取str中字符串的单个字符 8 * 利用str.regionMatches()方法比较str字符串中与截取字符相同的个数 9 */ 10 11 package cn.deu.ccut.eleven; 12 13 import java.util.*; 14 15 public class Test { 16 public static void main(String[] args) { 17 Scanner reader=new Scanner(System.in); 18 System.out.println("输入字符串:"); 19 String str=reader.nextLine(); 20 21 for(int t=0;t<str.length();t++) { 22 int num=0; 23 if(str.indexOf(str.substring(t,t+1))==t) { 24 for(int i=0;i<str.length();i++) { 25 if(str.regionMatches(i,str.substring(t,t+1),0, 1)){ 26 num++; 27 } 28 } 29 System.out.println(str.substring(t,t+1)+":"+num); 30 } 31 } 32 } 33 }
运行截图:
题目2:编写程序,输入一个字符串,判断该串中的字母能否组成一个回文串(回文串:一个字符串从前向后读取和从后向前读取都一样)。如:ab<c>c?ba
Huiwen类:一个主方法;一个String类str对象
/** * 一个主方法 * nextLine()方法接收键入的字符串; * length()方法判断字符串中的字符个数赋给变量int a; * int t;累加器 * charAt(int i)方法获取当前字符串第i个位置的字符 */ package cn.deu.ccut.eleven; import java.util.*; public class Huiwen { public static void main(String[] args) { // TODO Auto-generated method stub Scanner reader=new Scanner(System.in); System.out.println("输入一个字符串:"); String str=reader.nextLine(); int a=str.length(); int t=0; for(int i=0;i<a/2;i++) { if(str.charAt(i)==str.charAt(a-(i+1))) { t++; } } if(t==a/2) { System.out.println("该字符串是回文"); }else { System.out.println("该字符串不是回文"); } } }
运行截图: