안녕하세요 차세대 IT리더가 되고픈 비공자입니다.
오늘은 String 변수에 대해 자세히 공부 두 번째로
포스팅을 해보려고 해요~
String 변수는 배울게 너무 많이 있는 것 같아서
시리즈로 포스팅을 하고 있는데 여러분들도
같이 공부를 해보면서 하나씩 같이 배워가면
좋겠습니다. @_@
그럼
같이 공부를 해보도록 할까요?
[ 오늘의 목록 ]
1. String Wrapper 클래스 저장 방식
2. String Wrapper 클래스 내부 메서드
2-1. 저장된 문자열의 위치 찾기
2-2. 저장된 문자열의 마지막 인덱스 찾기
, 저장된 문자열의 두 번째 마지막 인덱스
, 저장된 문자열의 세 번째 마지막 인덱스
String 변수는 자바의 변수들에서 중에서
Wrapper 클래스라고 저번 포스팅에서 말씀을 드렸는데
Wrapper 클래스는 데이터를 지지고 볶고 할 수 있어요!
Wrapper 클래스의 내부 기능들 |
1. 데이터를 저장 가능하고 2. 데이터를 수정 가능하고 3. 데이터끼리 비교도 가능하고 4. 데이터 있는지 없는지 확인 가능하고 5. 데이터끼리 같은 타입인지 확인 가능하고 6. 동일한 데이터가 있는지 없는지도 확인 가능하다. |
등등.. 정말 수많은 기능들이 클래스의 내부에
어마무시하게 있어요~!
[ String Wrapper 클래스 저장 방식 ]
1번과 2번은 String 타입의 변수를 객체(참조형)
Wrapper 클래스를 객체(참조형) 변수로
선언 및 데이터 저장 후, 호출하는 모습을 볼 수 있고
3번은 자료형(원시) 변수로 선언하여 데이터를
저장한 후, 데이터를 출력하는 모습을 볼 수 있습니다.
총 2가지 생성 방식으로 구현해 볼수 있습니다.
[ 2. String Wrapper 클래스 내부 메서드 ]
이제 데이터를 선언하는 방식과 저장하는 방식도
배웠으니까 이제 진짜로 어마무시한 기능들을
사용해 보도록 하겠습니다.
[ 2-1. 저장된 문자열의 위치 찾기 ]
charAt : 문자열의 문자의 위치(인덱스)를 입력
하면 문자를 찾아 출력
위의 코드를 보면 str_1 변수에. charAt(찾을 위치)를
사용하면 해당 위치에 저장된 문자를 출력하는 모습을
볼 수 있어요~ 어? 그러면 문자 '안'은 1로 찾아야
하는 거 아닌가요?라고 물어볼 수 있는데
이건 배열의 인덱스라는 개념을 배워야 이해하기 쉽지만
나중에 배열을 공부하고 그래도 지금은 이해를 해야 하니
그림으로 추가 개념 설명을 하도록 하겠습니다.
문자열의 위치(인덱스) 그림으로 이해하기
위의 그림을 보시면 문자열 데이터의
문자 하나하나에 인덱스가 있는 걸 볼 수 있어요!
문자열의 첫 번째 시작은 0부터 시작해요!
문자만 보고 찾는다고 가정하에 2번째 문자를
찾으려면 실제 찾을 문자의 인덱스 -1을 해준 자리가
문자열의 두 번째 위치는 2-1인 [ 1 ]입니다.
[ 공백도 인덱스(위치)가 있나요? ]
네! 맞습니다.
공백(띄어쓰기)도 문자열에 있는 데이터라고
인식을 하기 때문에 공백 또한 인덱스가 있습니다.
그렇기 때문에
저기 문자열의 인덱스 4번과 6번 사이의 5번이
공백의 인덱스(위치)가 되는 거예요~
[ 참고 ]
공백이 문자열의 처음과 끝에 있으면 공백은 인덱스가
존재하지 않고 꼭 문자열의 중간에 공백이 있어야
인덱스가 있습니다.
[ 2-2. 저장된 문자열의 마지막 인덱스 찾기 ]
드디어 두 번째 오늘은 그림이 많다 보니까
확실히 포스팅하는데 오래 걸리네요 ^^..
왜 문자열의 마지막 문자를 찾는데 length() 뭐고
왜 -1을 하는지 모르시겠지만 제가 이해를
도와드리기 위해 설명을 하자면
length()는 문자열의 길이 구하는 메서드입니다.
length() : 문자열 길이
그렇다면 length() -1은 뭐일까요?
-1은 마지막 인덱스입니다.
( 문자열 전체를 구한 다음에 뒤에서부터 찾기를 시작! )
이제 조금 더 상세하게 설명을 드리기 위해
그림으로 설명해 드리겠습니다.
위처럼 문자열의 처음 문자의 인덱스는 0
문자열의 마지막 인덱스는 [ length(전체길이) -1 ]입니다.
그렇다면 여기서 문제!
문자열의 두 번째 마지막 인덱스의 문자를
찾는 방법은 무엇일까요?
....
....
....
정답은...
문자열 [ length(전체길이) - 2 ]를 하시면 됩니다.
위의 코드와 같이 두 번째 마지막 인덱스의 문자는
charAt( str_2.length() -2 ) => [ ㅠ ]이고
위의 코드와 같이 세 번째 마지막 인덱스의 문자는
charAt( str_2.length() -3 ) => [ . ]입니다.
오늘은 String Wrapper 클래스의 내부 메서드인charAt()를 사용해서 문자열의 특정 문자를 찾고문자열의 처음 인덱스의 문자와문자열의 길이 구하는 메서드, 문자열의 마지막 인덱스의 문자,문자열의 두 번째, 세 번째 마지막 인덱스의 문자를찾는 방법을 배웠습니다.
String Wrapper 클래스의 내부 메서드(기능)들은
아직 한참 많이 남아서 배워야 할게 많지만..
여러분들도 하나씩 기능들을 익히시면
나중에 꼭 도움이 되실 거라고 생각합니다.
그럼...
오늘도 저의 포스팅을 읽어주셔서 감사합니다.
'Java 개발자가 되고 싶은 비공자' 카테고리의 다른 글
자바(Java)의 equals( 문자열 비교 ) 문자열에 대해 자세히 공부[4] (28) | 2024.01.17 |
---|---|
자바(Java)의 indexOf( 문자 위치 ) 문자열에 대해 자세히 공부[3] (27) | 2024.01.16 |
자바(Java)의 Wrapper클래스 문자열에 대해 자세히 공부 [1] (29) | 2024.01.14 |
자바(Java) 이클립스(Eclipse)에서 변수 생성 및 정의 [2] (28) | 2024.01.14 |
자바(Java) 이클립스(Eclipse)에서 변수 생성 및 정의 [1] (28) | 2024.01.14 |