字符串API练习三则

(1)按照Ascii码字典的顺序排列字符串。核心API:int compareTo(String),若大于则返回1,小于返回-1,等于返回0。

class StringArray
{
static void sort(String[] array)
{
for(int i = 0;i<array.length;i++)  //BubbleSort
for(int j=0;j<array.length-i-1;j++)
{
if(array[j].compareTo(array[j+1])>0)
{
String temp = array[j];
array[j]=array[j+1];
array[j+1]=temp;
} }
}
} public class AsciiSort
{
public static void main(String[] args)
{
String[] array = {"aa","cc","bb","dddddd","jkaka","haha"};
StringArray.sort(array);
for(int i=0;i<array.length;i++)
System.out.println(array[i]);
}
}

(2)判断子串在一个字符串中出现的次数。核心API:int indexOf()

/*判断子串在一个字符串中出现的次数*/
class CountNumber
{
static int CountNum(String str1,String str2)
{
int count = 0;
int index = 0;
while(str1.indexOf(str2,index) != -1)
{ index = str1.indexOf(str2,index) + str2.length();
count++;
}
return count;
}
} public class AppearNum
{
public static void main(String[] args)
{
String str1 = args[0];
String str2 = args[1];
int i = CountNumber.CountNum(str1,str2);
System.out.println(i);
}
}

(3)查找一个字符串在另一个字符串中的最大字串。

class SubString
{
static String lSubString(String str1,String str2)
{
for(int i=0;i<str2.length();i++)
{
for(int start=0,end=str2.length()-i;end != str1.length()+1;start++,end--)
{
if(str1.contains(str2.substring(start,end)))
{
return str2.substring(start,end);
}
}
}
return "xx";
}
} public class LongestSubString
{
public static void main(String[] args)
{
String str1 = args[0];
String str2 = args[1];
String con = SubString.lSubString(str1,str2);
System.out.println(con);
}
}
上一篇:20155304田宜楠《网络对抗技术》Exp1 PC平台逆向破解(5)M


下一篇:Java常考面试题(经典)