今天看了一下String类的一些基本用法,以后的时间需要不断巩固自己对java基础的理解,所以写下来让自己可以不断的反复复习。
下面把这些简单的代码实现粘贴下来。
import java.lang.String; public class StringDemos{ /** 答案一:1、模拟String类中trim方法 思路: 1.将字符串转换成字符数组 2.定义start 和 end 变量 3.判断收尾是否有空格,首有则start++,尾有则end--,保证start<end 4.可以用到subString(start,end)方法.截取空格 */ public static String myTrim(String str){ int start = 0; int end = str.length()-1; char[] ch =str.toCharArray(); while((start<end)&&ch[start]==' ') start++; while((start<end)&&ch[end]==' ') end--; return str.substring(start,end); } /** 答案二:2、将Sting字符串翻转 思路: 1.将字符串转换成字符数组 2.定义for循环将指定的位置(x,y)进行字符位置转换 3.返回的结果转换成字符串 */ public static String revertString(String str,int x,int y){ char[] ch = str.toCharArray(); char[] ch1 = swap(ch,x,y); return new String(ch1); } public static char[] swap(char []ch, int x,int y){ for(;x<y;x++,y--){ char temp = ch[x]; ch[x] = ch[y]; ch[y] = temp; } return ch; } public static String revertString(String str){ return revertString(str,0,str.length()-1); } /** 答案三:3、获取一个字符串中另一个字符串出现的次数 思路: 1.定义一个count计数器, 2.调用indexOf(String str,int fromIndex)方法来获取字符串的当前索引值。 3.返回count */ public static int getCounts(String str,String key){ int count =0; int index=0; while((index=str.indexOf(key,index))!=-1){ index = index+key.length(); sop("index="+index); count++; } return count; } /** 答案四:4、获取两个字符串中最大相同子串。 思路: 1.比较子串的大小,将大的子串作为目标子串。分割小的子串。 2.将子串从大到小来进行比较,如果出现相同的子串便是最大子串。 3.调用contains(CharSequence s)方法,比较是否有相同子串。 4.调用substring()方法来进行子串的截取。 */ public static String maxString(String str1,String str2){ //进行子串的比较 String max = ""; String min = ""; max = (str1.length()>str2.length())?str1:str2; min = (str1==max)?str2:str1; //sop("max="+max+"...min="+min); //寻找最大子串,两个变量,一个操作头一个操作尾 for(int x=0;x<min.length();x++){ for(int y=min.length();y>x;y--){ // sop("sub:=="+min.substring(x,y)); String str = min.substring(x,y); if(max.contains(str)){ return str; } } } return ""; } public static void main(String []args){ String s = "abdcefg"; sop("count="+maxString(s,"abdrf")); } public static void sop(String str){ System.out.println(str); } }
版权声明:本文为博主原创文章,未经博主允许不得转载。
时间: 2024-10-06 12:10:44