黑马程序员技术交流社区

标题: 大神快!戳进来! [打印本页]

作者: 一米一光年    时间: 2015-3-27 21:53
标题: 大神快!戳进来!
获取一个字符串中指定子串出的次数。比如说“hanbasdnbafllgnbahjnbakqqqqlnbaxi” 在这个字符串中,多有个nba?
作者: lf027    时间: 2015-3-27 22:24
class StringTest{         public static void main(String[] args) {                 String str = "hanbasdnbafllgnbahjnbakqqqqlnbaxnbai";                 String regex = "nba";                                  int count = getCount(str, regex);                                  System.out.println(count);         }           public static int getCount(String maxString, String minString) {                                  int count = 0;                                  int index = maxString.indexOf(minString);                                  while (index != -1) {                                                  count++;                                                  maxString = maxString.substring(index + minString.length());                                          index = maxString.indexOf(minString);                 }                 return count;         }  }     





6次   
作者: 卢乾荣    时间: 2015-3-27 22:42
public static int getSum(String str,String s)
        {
                    String max=str.length()>s.length()?str:s;
                        String min=(max==str)?s:str;
                //indexOf获取字符串第一次出现的位置。
            int count=0;
                        //循环中看大串中是否包含小串,循环中不包含小串返回false.
                    while(max.contains(min))
                        {
                                  //获取第一次获得的位置
                              int index=max.indexOf(min);
                              count++;
                                  //生成新串
                              max=max.substring(index+min.length(),max.length());   
                        }
                        return count;
        }
作者: 圣光忏悔    时间: 2015-3-27 23:02
  1. /**
  2. * 获取一个字符串中指定子串出的次数。
  3. *  比如说“hanbasdnbafllgnbahjnbakqqqqlnbaxi”
  4. *  在这个字符串中,多有个nba?
  5. *
  6. */
  7. public class Stringdemo {
  8.         public static void main(String[] args) {
  9.                 // 定义字符串
  10.                 String str = "hanbasdnbafllgnbahjnbakqqqqlnbaxi";
  11.                 // 定义子字符串
  12.                 String st = "nba";
  13.                
  14.                 // 定义次数
  15.                 int count = 0;
  16.                 // 判断字符串是否以子字符串结尾,如果是开头,他会自动拆分,第一个为空,所以开头不用管
  17.                 if(str.endsWith(st)){
  18.                         count++;
  19.                 }
  20.                
  21.                 // 通过字符串拆分确定有几个
  22.                 String[] s = str.split(st);
  23.                 count = count + s.length-1;
  24.                 System.out.println(count);
  25.                 for(String x : s){
  26.                         System.out.println(s);
  27.                 }
  28.         }
  29. }
复制代码





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