Java String方法获取字符出现次数及字符最大相同部分示例

时间:2022-05-26 09:40:49

本文实例讲述了Java String方法获取字符出现次数及字符最大相同部分。分享给大家供大家参考,具体如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package demo;
public class Test {
  public static void main(String[] args) {
    String str = "dasdalldsdslldsdszxll";
    System.out.println("count="+get(str,"ll"));//打印ll出现的次数
    String s1 = "asdhellovdvdvv";
    String s2 = "cvfhelloff";
    System.out.println("temp="+gett(s1,s2));//打印两个字符串最大相同的部分
  }
  /* public static int get(String str,String key)
  {
    int count = 0;
    int index = 0;//定义一个位置
    while((index = str.indexOf(key))!=-1)//直到取不到需要的字符结束循环
    {
      str = str.substring(index + key.length());//字符串长度变化获得新的字符串
      count++;
    }
    return count;
  }
  */
  //第二种方法,大同小异
  public static int get(String str,String key)
  {
    int count = 0;
    int index = 0;
    while((index = str.indexOf(key,index))!=-1)
    {
      index = index + key.length();
      count ++;
    }
    return count;
  }
  public static String gett(String s1,String s2)
  {
    String max = "";
    String min = "";
    max = s1.length() > s2.length()?s1:s2;
    min = max == s1?s2:s1;//取短的字符串比较节省内存
    for(int x = 0;x < min.length();x++)
    {
      for(int y = 0,z = min.length() -x;z!=min.length()+1;y++,z++)
      {
        String temp = min.substring(y,z);
        if(max.contains(temp))
          return temp;
      }
    }
    return "";
  }
}

运行结果:

Java String方法获取字符出现次数及字符最大相同部分示例

希望本文所述对大家java程序设计有所帮助。

原文链接:http://blog.csdn.net/chaoyu168/article/details/49280517