Java

Java 개발 공부 18일차 (21.09.09)

Pearl_mini 2021. 9. 10. 12:50
728x90

String Class (메서드를 사용 후에도 계속 String 클래스 이다)

- charAt(숫자) : String을 배열로 취급했을 때 숫자 인덱스 위치의 문자를 char 타입으로 가져온다.

- indexOf( "문자열") : 문자열을 찾아서 시작하는 인덱스값을 리턴한다. 찾는 값이 없으면 -1이 리턴된다.

 - length() : 문자열의 총 길이 리턴 (공백 포함)

-  replace("1", "2"): 해당 문자열을 다른 문자열로 대체해서 문자열 전체를 복사하는 메서드. 1 문자열을 찾아서 다 2문자열로 변경한 뒤 문자열을 복사해서 새로운 String 객체로 만든다.

- substring(a, b) : a인덱스부터 b-1인덱스까지 문자열을 잘라서 가져옴 // substring(a) : a인덱스부터 끝까지 리턴한다.

- toLowerCase() : 소문자로 변경, toUpperCase() : 대문자로 변경

- trim() : 양쪽에 있는 공백을 없애준다. (앞과 뒤만 없애주고 중간 공백은 없어지지 않음)

- String.valueOf() : 기본 자료형 값을 String 타입으로 변환시켜주는 메서드.

(** Integer.parseInt 는 문자열을 int 타입으로 변경해주는 메서드.)

 


 

StringTokenizer 클래스

- 문자열이 특정 구분자(delimiter)로 연결되어 있을 경우, 구분자를 기준으로 부분 문자열을 분리하기 위해서 사용.

만약 구분자를 생략하면 공백이 기본 구분자가 된다.

- 메서드 종류 : hasMoreTokens(), nextToken()... 

- split(".|,") : ()안 .또는 , 으로 문자열을 구분해서 하나씩 꺼내온다. (|는 or로 또는을 의미) - 결과는 String 배열로 나옴

- StringTokenizer

1) countTokens()를 이용하여 for 반복문을 돌리는 방법

2) hasMoreTokens()로 토큰이 있는지 여부 확인하여 반복문을 돌리는 방법

.nextToken()으로 다음 토큰을 가져온다. countTokens는 토큰 갯수를 리턴

 

String은 한번 선언된 후 수정될 수 없다. 그러나 덧셈연산으로 더해지면 새로운 힙 영역에 데이터가 생성되고 새로운 주소값을 변수가 가리키게 된다. 원본이 수정되는 것은 없다.

 

StringBuilder 클래스

- String을 변경할 수 있도록 만들어놓은 클래스

- append, insert, delete, deleteCharAt, replace, StringBuilder reverse(), setCharAt() 등 여러가지 메소드 존재.

 

((객체 내의 toString() 메소드 선언 하면 클래스명@객체내용 등 출력할 수 있는 내용을 다 string으로 호출 출력한다. 생략해도 sysp에서 자동으로 toString이 호출되고 출력이 된다.))

Arrays Class

탐색

- 선형 탐색

- 이진 탐색(binary search) : 정렬된 상태에서 탐색한다. 항상 가운데를 찾은 후에 가운데 값과 비교를 하면서 탐색 영역을 찾아가는 탐색법



배열정렬

- Arrays.sort(배열명) -: 오름차순 정렬 된다.

- Arrays.binarySearch(배열명, 찾는 값) :

- copyOf ( 원본배열, 복사할 길이)- deepEqual, equals, copyOfRange

 항상 정렬이 된 상태에서 사용해야 함.

없는 값을 찾으면 -1이 출력된다.

그리고 정렬이 안된 상태에서 누르면 이상한 값이 나온다.

728x90