黑马程序员技术交流社区

标题: 关于毕老师String类练习的问题 [打印本页]

作者: zjqlovelyy    时间: 2013-1-1 23:45
标题: 关于毕老师String类练习的问题

  1. /*我觉得这个题目可以用KMP算法或者简单字符串匹配来做
  2.         下面的index = index +key.length();好像没有考虑到如果找到第一个子串的位置,加以后又是key串
  3.         例如 str=aaaa  key =aa  第一个位置是0,然后偏移一个位置后一样是key串
  4. */
  5. class StringDemo1
  6. {

  7.         public static void main(String[] args)
  8.         {
  9.                 String str = "aaaaa";
  10.                 String key = "aa";
  11.                 System.out.println(getSubCount_2(str,key));
  12.         }
  13.         public static int getSubCount_2(String str,String key)
  14.         {
  15.                 int count = 0;
  16.                 int index = 0;

  17.                 while((index = str.indexOf(key,index))!=-1)
  18.                 {
  19.                         index = index + key.length();//我觉得应该为index= index+1;
  20.                         count++;                                               
  21.                 }
  22.                 return count;
  23.         }
  24. }
复制代码

未命名.jpg (7.95 KB, 下载次数: 38)

未命名.jpg

未命名.jpg (7.11 KB, 下载次数: 41)

未命名.jpg

作者: zjqlovelyy    时间: 2013-1-1 23:48
将上面我说的改为index = index+1;后的结果为4

未命名.jpg (7.72 KB, 下载次数: 37)

未命名.jpg

作者: 刘文超    时间: 2013-1-1 23:58
和我想一起了、
我也觉得这样更完整一些、
lz方法不错,学习中...
  1.         public static int getSubCount_2(String str,String key)
  2.         {
  3.                 int count = 0;
  4.                 int index = 0;
  5.                 while((index = str.indexOf(key,index))!=-1)
  6.                 {
  7.                         index = index + key.length();//我觉得应该为index= index+1;
  8.                         count++;                                                
  9.                 }
  10.                 return count;
  11.         }

复制代码

作者: zjqlovelyy    时间: 2013-1-2 00:02
刘文超 发表于 2013-1-1 23:58
和我想一起了、
我也觉得这样更完整一些、
lz方法不错,学习中...

我也刚刚开始学习JAVA几天:)一起加油
作者: zjqlovelyy    时间: 2013-1-2 19:53
问题已解决




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2