第11次作业--字符串处理
题目1:编写一个应用程序,统计输入的一个字符串中相同字符的个数,并将统计结果输出。
1.TEST.java
import java.util.Scanner;
public class TEST {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner reader = new Scanner(System.in);
System.out.println("请输入一个字符串");
String input=reader.nextLine();
for(int i=0;i<input.length();i++){
char flag1 = input.charAt(i); //提取字符串中字符为flag
String str1 = String.valueOf(flag1); //将字符类型转化为字符串类型
int num = 0; //设置计数器
if(input.indexOf(str1)==i){ ////字符是否第一次出现
for(int j=0;j<input.length();j++)
{
char flag2 = input.charAt(j); //提取字符串字符
String str2 = String.valueOf(flag2); //将字符类型转化为字符串类型
if(str1.equals(str2)) //将flag1与字符串中的每个字符做做比较
num++;
}
System.out.println(flag1+":"+num);
}
}
}
}
运行结果

题目2:编写程序,输入一个字符串,判断该串中的字母能否组成一个回文串(回文串:一个字符串从前向后读取和从后向前读取都一样)。如:ab<c>c?ba
1.回文数.java
import java.util.Scanner;
public class 回文数 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner reader = new Scanner(System.in);
System.out.println("请输入一个字符串");
String str=reader.nextLine();
String S1 = str.replaceAll("[\\p{Punct}\\p{Space}]+",""); //利用正则表达式剔除特殊字符
StringBuffer S2 = new StringBuffer(S1); //创建StringBuffer对象
S2.reverse(); //将字符串倒置
if(S1.equals(S2.reverse().toString())){ //与原字符串进行比较
System.out.println("是回文字符");
}
else System.out.println("不是回文字符");
}
}
运行结果

浙公网安备 33010602011771号