题目1:编写一个应用程序,统计输入的一个字符串中相同字符的个数,并将统计结果输出。
package zuoye; import java.util.*; public class zifuchuan { public static void main(String[] args) { String a = "请提问九川川川"; // int flag =0; for (int i = 0; i < a.length(); i++) {//从头遍历字符串 int sum = 0;//定义一个和 for (int j = 0; j < a.length(); j++) {//再次从头遍历字符串 if (a.substring(i, i + 1).equals(a.substring(j, j + 1))) {//拿第一次遍历的字母去跟第二次遍历的字母做匹配。若相同,则sum+1 sum += 1; } } if (sum > 1) { System.out.println(a.substring(i, i + 1) + "的个数为:" + sum); break; } System.out.println(a.substring(i, i + 1) + "的个数为:" + sum);//打印 } } }
运行结果:
题目2:编写程序,输入一个字符串,判断该串中的字母能否组成一个回文串(回文串:一个字符串从前向后读取和从后向前读取都一样)。如:ab<c>c?ba
package zuoye; public class zifuchuan1 { public static void main(String[] args) { String a = "川九川"; int i = a.length()/2-1;//从字符串中间往左 int j = a.length()/2+1;//从字符串中间往右 boolean c = true;//默认为真 for(;i >= 0 || j < a.length();i--,j++){//遍历整个字符串判断是否为回文 if(a.charAt(i) != a.charAt(j)) c = false; else c = true; } if(c == false) System.out.println(a+" 不是回文"); else System.out.println(a+" 是回文"); } }
结果: