예전에 배운 스트링 클래스에대해서 다시 복습겸 정리하는 시간이다~ !
String은 무조건 새롭게 만들어지는 것이다!!
이름이 다른 변수에 같은 글씨를 담게 되면 실제로 다른 변수처럼 그 내용물이 담기는게
아닌 그 글씨의 주소값을 바라보는 것
단 String str1 = new String(my String) ; 이렇게 하게 되면 새로운 인스턴스를 생성하여 주소가 다르게 저장된다
그래서 위처럼 비교를 하게되면 서로 다른 주소값을 가지고 있는것을 확인 할수 있다 .
String을 사용한 기본 문자열 연산익히기
concat(String str) : 대상문자열 뒤에 매개변수 붙여 반환
abc.concat(“def”) => 결과 “abcdef”
substring(int beginindex) :대상 문자열 매개변수의 위치부터 끝까지 반환
문자열을 자를 기능도 함
abcd.substring(0); => 결과 abcd (인덱스 0은 a 라서 abcd)
abcd.substring(3); => 결과 d (인덱스 3은 d 라서 d)
substring(int beginindex,int endindex) :대상문자열 매개변수의 인덱스 사이를 반환
endindex는 반드시 beginindex보다 커야함
abcde.substring(3.5) => 결과 “de”
replace(Char oldChar , Char newChar) : 대상문자열에 oldChar문자를 newChar로 바꿈
abcd.replace(a , A) =>결과 “Abcd”
replace(CharSequence t , CharSequence k) : 대상문자열에서 t를 k로 바꿈
abcdef.replace(abc, zqw) =>결과 “zqwdef”
toLowerCase() : 대상문자 문자를 모두 소문자
Target.toLowerCase(); => 결과 target
toUpperCase() : 대상문자 문자를 모두 대문자
Target.toUpperCase(); => 결과 TARGET
문자열 비교
equals(Object anObject) : 대상 문자열이 anObject와 같은비 비교해서 boolean 값 반환 (대소문자 구별 )
“abc”.equals(“def”) => 결과 false
equalsIgnoreCase : 대상 문자열이 anObject와 같은비 비교해서 boolean 값 반환 ( 대소문자 구별 못함)
“abc”.equals(“ABC”) => 결과 true
compareTo(String another String) 대상 문자열이 사전적위치 비교 (같으면 0 앞이면 - , 뒤라면 +)
“a”.compareTo(“c”) => 결과 -2
“c”.compareTo(“a”) => 결과 2
“a”.compareTo(“a”) => 결과 0
startWith(String prefix) : 대상문자열이 매개변수로 받은 문자열로 시작는지 확인후 boolean으로 반환
“ABCDE”.startWith(“ABC”) => 결과 true
endWith(String suffix) : 대상문자열이 매개변수로 받은 문자열로 끝나는지 확인후 boolean으로 반환
“ABCDE”.startWith(“DE”) => 결과 true
특정문자 위치 파악
indexOf(String str) : 대상문자열에서 str 문자가 앞에서부터 몇 번째인지 확인하여 인덱스로 반환
“ABCDE”.indexOf(“B”) => 결과 1
lastindexOf(String str): 대상문자열에서 str 문자가 뒤에서부터 몇 번째인지 확인하여 인덱스로 반환
“ABCDE”.lastindexOf(“A”) => 결과5
@ 인덱스 번호에 없다면 –1 로 찍힌다
특정형식으로 문자열 포멧
format(String format, object.... args) :매개변수 format의 형태로 뒤따라 입력된 매개변수를 변경한다
(프린트 f라 생각하면 편하다 ... 그림보구 이해하자 )
StringBuilder : 문자열 저장 및 변경을 휘한 메모리 공간을 지니는 클래스
'아옳옳의 코딩공부 > 아옳옳 자바코딩공부' 카테고리의 다른 글
2021-04-05 자바공부 (Object 클래스 ) (0) | 2021.04.06 |
---|---|
2021-04-05 자바공부 (예외처리) (0) | 2021.04.05 |
2021-02-26 자바공부 (interface, Inner클래스[내부클래스]) (0) | 2021.02.26 |
2021-02-25 자바공부 (abstract 클래스 , interface) (0) | 2021.02.25 |
2021-02-24 자바공부 (상속4 상속을 사용한 안드로이드 작업) (0) | 2021.02.24 |