博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【实用类String】String类方法的应用案例:查找判断指定字符出现的次数和位置...
阅读量:6511 次
发布时间:2019-06-24

本文共 3184 字,大约阅读时间需要 10 分钟。

一、应用要求

  输入一个字符串,再输入要查找的字符,判断该字符在该字符串中出现的次数。

二、实现思路

  1.使用substring()方法将字符串的每个字符存入数组

  2.比较数组每个字符是否与指定的字符相等,并计数

三、编写代码

  错误案例:

1 import java.util.Scanner; 2  3 public class StringDemo { 4  5     public static void main(String[] args) { 6         Scanner input = new Scanner(System.in); 7         System.out.println("请输入一句话:"); 8         String string = input.next(); 9         System.out.println("请输入查找的字符串:");10         String s = input.next();11         12         13         //2.正序14         /*int num = 0;15         int temp = 0;16         while(string.indexOf(s)>-1){17             int index = string.indexOf(s);18             num=num+index+temp;19             System.out.print(num+"\t");20             string = string.substring(index+1);21             temp++;22         }*/23         /*while(string.indexOf(s)>-1){24             if (temp == 0) {25                 System.out.println(string.indexOf(s));26                 num = string.indexOf(s);27                 string = string.substring(string.indexOf(s)+1);28                 temp++;29             } else {30                 int indexs = string.indexOf(s);31                 string = string.substring(indexs+1);32                 num=num+indexs+1;33                 System.out.print(num+"\t");34             }35             36         }*/37         /*从后往前找,遇到重复字符会出错38          * 39         //1.查找第一个下标40         int index = string.indexOf(s);41         //声明一个集合保存获取的下标42         List
list = new ArrayList
();43 while(string.length()>=index){44 //2.查找最后一个45 int indexEnd = string.lastIndexOf(s);46 if (indexEnd<0) {47 break;48 }49 list.add(indexEnd);//保存到list50 //System.out.print(indexEnd+"\t");51 string = string.substring(0, indexEnd);52 }53 //遍历list54 System.out.println();55 for (int i = list.size()-1; i >= 0; i--) {56 System.out.print(list.get(i)+"\t");57 }58 */59 //查找字符打印位置下标:正序查找才是王道60 for (int i = 0; i <= string.lastIndexOf(s); i++) {61 if (s.equals(string.substring(i, i+s.length()))) {62 System.out.println(i);63 i = i+s.length()-1;64 }65 }66 input.close();67 68 }69 70 }

  最终代码:

1 import java.util.Scanner; 2 /** 3  * 查找字符串 4  * @author Administrator 5  * 6  */ 7 public class String01 { 8  9     public static void main(String[] args) {10         Scanner input = new Scanner(System.in);11         System.out.println("请输入一句话:");12         String string = input.next();13         System.out.print("请输入查找的字符串:");14         String s = input.next();15         //查找字符打印位置下标16         int count = 0;//记录字符出现的次数17         for (int i = 0; i <= string.lastIndexOf(s); i++) {18             if (s.equals(string.substring(i, i+s.length()))) {19                 System.out.print(i+"\t");20                 i = i+s.length()-1;21                 count++;22             }23         }24         System.out.println(s+"共出现"+count+"次!");25         input.close();26 27     }28 29 }

转载于:https://www.cnblogs.com/tengqiuyu/p/6916306.html

你可能感兴趣的文章
一题关于PHP的CTF
查看>>
phpmyadmin 免登陆
查看>>
【Linux相关配置】Wine1.12中文完美配置
查看>>
[uart]理解线路规程的作用
查看>>
RecyclerView的使用(2)之多Item布局的载入
查看>>
Go1.5 改进摘要
查看>>
eclipse 下的jdk
查看>>
$route、$router的学习
查看>>
Unknown column 'XX' in 'field list'彻底研究
查看>>
Beyond 海阔天空 翻唱
查看>>
华为软件岗大类提前批秋招面经(已拿offer)
查看>>
微信开发天气预报教程
查看>>
swift Dictionary 字典
查看>>
google-perftools安装
查看>>
C / C++ 输入输出缓存处理
查看>>
eclipse导出JAVA DOC文档以及导出java doc编码错误解决办法
查看>>
web应用服务端消息推送技术之dwr3
查看>>
Spring Tool Suite(Eclipse)web开发环境
查看>>
同意不同列多字段分组查询
查看>>
EL表达式各种函数使用大全
查看>>