String 类 -- 练习(一)1、给定一个字符串数组,按照字典顺序进行从小到大的排序。{"nba","abc","cba","zz","qq","haha"}思路:①对数组排序,可以用选择,冒泡都行。②for 嵌套、比较以及换位。③使用 String 类中提供的用于字符串比较的功能进行比较。代码:1.public class StringTest{2.public static void main(String[] args){3. String[] arr = { "nba","abc" ,"cba" ,"zz" ,"qq" ,"haha" };4. printArray(arr);5. sortString(arr);6. printArray(arr);7. }8.public static void printArray(String[] arr){9.System.out.print( "[");10.for(int i = 0; i < arr.length; i++){11.if(i != arr.length -1)12. System.out.print(arr[i] + ",");13.else14. System.out.println(arr[i] + "]");15. }16. }17.public static void sortString(String[] arr){18.for(int i = 0; i < arr.length - 1; i++){19.for(int j = i + 1; j < arr.length; j++){20.if(arr[i].compareTo(arr[j])>0){21. swap(arr,i,j);22. }23. }24. }25. }26.private static void swap(String arr[],int i, int j){27. String temp = arr[i];28. arr[i] = arr[j];29. arr[j] = temp;30. }31.}复制代码运行结果:2、一个子串在整串中出现的次数"nbaernbatynbauinbaopnba" 思路:①要找的子串是否存在, 如果存在获取其出现的位置, 这个可以使用 indexOf完成。②如果找到了,那么就记录出现的位置并在剩余的字符串中继续查找该子串,而剩余字符串的起始位是出现位置+ 子串的长度。③以此类推,通过循环完成查找,如果找不到就是-1 ,并且每次找到用计数器记录。代码:1.public class StringTest{2.public static void main(String[] args){3. String str = "nbaernbatynbauinbaopnba";4. String key = "nba";5.int count = getKeyStringCount(str,key);6.System.out.println( "count = " + count);7. }8. public static int getKeyStringCount(String str,String key){9.//1、定义计数器10.int count = 0;11.//2、定义变量记录key 出现的位置12.int index = 0;13.while((index = str.indexOf(key)) != -1){14. str = str.substring(index + key.length());15. count++;16. }17.return count;18. }19.}复制代码运行结果: