本文实例讲述了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程序设计有所帮助。
原文链接:http://blog.csdn.net/chaoyu168/article/details/49280517