第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("不是回文字符");
		


	}

}

运行结果

 

 

 

 

posted @ 2019-11-19 15:09  徐伟刚  阅读(219)  评论(0编辑  收藏  举报