本文实例讲述了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