자바 String 클래스

String 클래스 의 대표 문자열 입 니 다.자바 프로그램의 모든 문자열 글자 액면가(예 를 들 어 abc)는 이러한 인 스 턴 스 로 이 루어 집 니 다.
문자열 은 상수 입 니 다.그들의 값 은 생 성 된 후에 변경 할 수 없습니다.문자열 버퍼 는 가 변 문자열 을 지원 합 니 다.
String 클래스 에 포 함 된 방법 은 시퀀스 의 단일 문자,비교 문자열,검색 문자열,하위 문자열 추출 에 사용 할 수 있 습 니 다.
문자열 복사 본 을 만 들 고 모든 문 자 를 대문자 나 소문 자로 변환 합 니 다.
String 류 는 가장 자주 사용 하 는 클래스 중 하나 입 니 다.다음은 몇 가지 연습 을 통 해 String 류 에서 제공 하 는 중요 한 방법 을 숙지 하 겠 습 니 다.
문자열 연습 1
문자열 배열 을 지정 하고 사전 순서에 따라 대소 문 자 를 정렬 합 니 다.
생각:
1.배열 을 정렬 할 때 정렬,거품 정렬 등 을 선택 할 수 있 습 니 다.
2.for 순환 플러그 인,비교,교환 위치.
3.다른 점 은 예전 에 비교 한 것 은 숫자 이 고 비교 연산 자 를 사용 했다.
현재 문자열 대상 을 비교 하고 있 습 니 다.compare To 방법 을 사용 해 야 합 니 다.

public class StringTest_1
{
 //          
 public static void stringSort(String[] arr)
 {
 //      
 for(int i=0;i<arr.length-1;i++)
 {
  for(int j=0;j<arr.length-1-i;j++)
  {
  // compareTo         
  if(arr[j].compareTo(arr[j+1])>0)
  {
   String temp=arr[j];
   arr[j]=arr[j+1];
   arr[j+1]=temp;
  }
  }
 }
 showArray(arr);
 }
 //    , [str1,str2,str3]        
 public static void showArray(String[] arr)
 {
 System.out.print("[");
 for(int i=0;i<arr.length;i++)
 {
  if(i!=arr.length-1)
  System.out.print(arr[i]+",");
  else
  {
  System.out.print(arr[i]+"]
"); } } } public static void main(String[] args) { String arr[]={"nba","abc","cba","zz","qq","haha"}; // showArray(arr); // stringSort(arr); } }
실행:

문자열 연습 2
문자열 에 하위 문자열 이 나타 나 는 횟수
생각:
1.index Of 방법 으로 문자열 에 처음 나타 난 위치 index 를 가 져 옵 니 다.
2.index Of 방법 으로(index+하위 문자열 길이)를 시작 으로 남 은 문자열 의 하위 문자열 이 나타 나 는 위 치 를 가 져 옵 니 다.문자열 에 하위 문자열 이 포함 되 지 않 을 때 까지.while 순환 으로 이 루어 집 니 다.
3.찾 을 때마다 카운터 로 기록 하면 된다.

public class StringTest_2 
{
 public static void main(String[] args) 
 {
 String str="abcqwabcedcxabcuabcjkabcnmbabc";
 //String str=null;
 try
 {
  int count=countChildStr(str,"abc");
  System.out.println("abc "+str+"       :"+count);
 }
 catch (NullPointerException ne)
 {
  System.out.println(ne);
 }
 catch(RuntimeException re)
 {
  System.out.println(re);
 }
 }
 public static int countChildStr(String str,String key)
 {
 if(str==null||key==null)
 {
  throw new NullPointerException("     ,           NULL");
 }
 if(key=="")
 {throw new RuntimeException("     ,      ");}
 int count=0,index=0;
 while((index=str.indexOf(key,index))!=-1)
 {
  count++;
  index+=key.length();
 }
 return count;
 }
}

문자열 연습 3
두 문자열 의 최대 공통 문자열 을 찾 습 니 다.
생각:
1.긴 문자열 에 짧 은 문자열 이 포함 되 어 있 는 지 판단 하고,포함 되 어 있 으 면 짧 은 문자열 은 최대 공공 문자열 입 니 다.
2.포함 되 지 않 으 면 짧 은 문자열 에 대해 길 이 를 줄 이 는 방식 으로 하위 문자열 을 가 져 오고 긴 문자열 에 포함 되 어 있 는 지 여 부 를 판단 하 며 포함 되 어 있 으 면 찾 을 수 있 으 니 더 이상 찾 지 않 아 도 됩 니 다.
3.중점:문자열 을 길이 로 줄 이 는 방식 으로 하위 문자열 을 가 져 옵 니 다.

public class StringTest_3
{
 public static void main(String[] args) 
 {
 //           
 String str1="abxczwsxcvdfas";
 //String str1=null;
 String str2="ghwsxcvxcdbgthnnnrfqwe";
 try
 {
  String str=searchMaxCommonStr(str1,str2);
  System.out.println("       :"+str);
 }
 catch (NullPointerException ne)
 {
  System.out.println(ne);
 }
 }
 public static String searchMaxCommonStr(String str1,String str2)
 {
 if(str1==null||str2==null)
  throw new NullPointerException("     ,     Null");
 //             
 String max=(str1.length()>str2.length())?str1:str2;
 String min=(str1.equals(max))?str2:str1;
 //           , min.length~~1
 for(int i=min.length();i>0;i--)
 {
  for(int x=0,y=x+i;y<min.length();x++,y++)
  {
  String childStr=min.substring(x,y);
  //            ,    
  //     
  if(max.contains(childStr))
   return childStr;
  }
 }
 return null;
 }
}
실행:

문자열 연습
trim 기능 과 같은 방법 을 쓰 세 요.
생각:
1.두 개의 변 수 를 정의 하여 두 개의 각 표를 저장 합 니 다.
2.빈 칸 이 아 닌 첫 번 째 문 자 를 찾 을 때 까지 문자열 을 처음부터 끝까지 옮 겨 다 닙 니 다.
3.문자열 캡 처

public class StringTest_4
{
 public static void main(String[] args) 
 {
 String str=" abc ws ";
 str=myTrim(str);
 System.out.println(str);
 }
 public static String myTrim(String s)
 {
 int begin=0,end=s.length()-1;
 //    
 while(begin<=end && s.charAt(begin)==' ')
 {
  begin++;
 }
 //     
 while(begin<=end && s.charAt(end)==' ')
 {
  end--;
 }
 return s.substring(begin,end+1);
 }
}
실행:

이상 은 본 고의 모든 내용 입 니 다.본 고의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.또한 저 희 를 많이 지지 해 주시 기 바 랍 니 다!

좋은 웹페이지 즐겨찾기