API
API(Application Programming Interface)란?
응용 프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을
제어할 수 있게 만든 인터페이스
자바 API 자바 플랫폼 위에서 동작하는 애플리케이션 개발 시 활용 (유용한 클래스 및 인터페이스 제공)
JDK를 설치하면 시스템을 제어하거나 편의 기능을 위한 API를 제공
Object
모든 클래스는 Object 클래스의 후손
java.lang 패키지에 존재
Obejct 클래스가 가진 메소드 중 관례상 많이 오버라이딩 해서 사용하는 메소드들이 존재
ex) toString(), equals(), hashCode()
제공하는 메소드
toString() : 인스턴스 생성 시 사용한 full class name과 @ 그리고 16진수 해쉬코드가 문자열로 반환
equals() : 매개변수로 전달 받은 인스턴스와 == 연산하여 true 또는 false를 반환
동일 인스턴스인지를 비교
(동일 객체 : 주소가 동일한 인스턴스)
(동등 객체 : 주소가 다르더라도 필드 값이 동일한 인스턴스)
hashCode() : 인스턴스의 주소값을 변환하여 생성한 인스턴스의 고유 값을 반환
String
Java.lang 패키지에 존재하는 클래스로 문자열을 처리하는 여러가지 메소드를 제공
제공하는 메소드
charAt() : 해당 문자열의 특정 인덱스에 해당하는 문자 반환
compareTo() : 두 문자열이 같은지 다른지에 따라 int 값을 반환
compareToIgnoreCase() : 대소문자를 구분하지 않고 비교 후 int 값을 반환
concat() : 문자열에 인자로 전달 된 문자열을 합침
indexOf() : 문자열을 앞에서부터 탐색하여 일치하는 위치의 인덱스를 int 값으로 반환
lastIndexOf() : 문자열을 뒤에서부터 탐색하여 일치하는 위치의 인덱스를 int 값으로 반환
trim() : 문자열의 앞 뒤 공백을 제거 후 문자열을 반환
toLowerCase() : 모든 문자를 소문자로 변환 후 문자열을 반환
toUpperCase() : 모든 문자를 대문자로 변환 후 문자열을 반환
문자열을 특정 구분자로 분리하는 방법
제공하는 메소드
spilit() : 정규표현식을 이용하여 문자열을 분리하며 속도가 느림
String str1 = "변수/연산자/메소드/제어문";
String[] strArr = str1.split("/");
StringTokenizer : 문자열의 모든 문자들을 분리하며 split보다 속도가 빠름
구분자를 생략하는 경우 기본 구분자는 공백
String str2 = "배열/객체/상속/다형성";
StringTokenizer st = new StringTokenizer(str2, "/");
while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
StringBuilder와 StringBuffer
String과 유사하지만 String이 불변이라면 StringBuilder나 StringBuffer는 가변
StringBuilder : 스레드 동기화 기능을 제공하지 않음
StringBuffer : 스레드 동기화 기능 제공
(스레드 동기화 유무의 차이 말고는 두 클래스가 의미하는 바가 동일함)
제공하는 메소드
capacity() : 용량(현재 버퍼의 크기)을 int 값으로 반환 (문자열 길이 + 16이 기본 용량)
append() : 인자로 전달 된 값을 문자열로 변환 후 기존 문자열의 마지막에 추가
delete() : 시작 인덱스와 종료 인덱스를 이용해서 문자열에서 원하는 부분의 문자열 제거
insert() : 인자로 전달된 값을 문자열로 변환 후 지정한 인덱스 위치에 추가
reverse() : 문자열 인덱스 순번을 역순으로 재배열
'백엔드 과정 > Java' 카테고리의 다른 글
[Java] day17. API -Date / Calendar (0) | 2022.01.07 |
---|---|
[Java] day17. API - Whapper / porsing (0) | 2022.01.07 |
[Java] day15. 추상클래스/ 인터페이스 (0) | 2022.01.06 |
[Java] day14. 다형성 (1) | 2022.01.05 |
Java 문제풀이. 홀수를 입력받아 오름/내림차순으로 출력하기 (배열) (0) | 2022.01.04 |