API - 1

조윤후·2021년 7월 7일

API 기능정의

개발자들이 편리하게 이용할수 있게 기능들을 정의 해둔 클래스들을 API(Application Programming Interface)라고 한다. 간단하게 정리하면 API란, 누군가가 만들어놓은 기능이다.

String의 이해 및 주요기능(메소드)

  • concat : 문자열 연결
  • substring : 문자열 자르기
  • length : 문자열 길이
  • toUpperCase : 대문자로 만들기
  • toLowerCase : 소문자로 만들기
  • charAt : 특정위치의 글자 찾기
  • indexOf : 특정문자열의 위치
  • equals : 문자열 비교
  • trim : 문자열 공백제거
  • replace : 특정 문자 변경
  • replaceAll : 특정문자열 변경

String 예제

package sutdy.java.ex17;

public class MainClass {

	public static void main(String[] args) {
		String str1 = "abcdefg";
		String str2 = "HIJKLMN";
		String str3 = "opqrstu";
		
		
		System.out.println(str1.concat(str2));
		System.out.println(str1.substring(3));
		System.out.println(str1.length());
		System.out.println(str1.toUpperCase());
		System.out.println(str2.toLowerCase());
		System.out.println(str1.charAt(3));
		System.out.println(str1.indexOf('c'));
		
		String str4 = "abcdefg";
		System.out.println(str1.equals(str4));
		
		String str5 = "abc de fg";
		System.out.println(str5.trim());
		
		System.out.println(str1.replace('a', 'z'));
		System.out.println(str1.replaceAll(str1, str3));
		System.out.println(str1.replaceAll("abcd", "kkkk"));
	}
	
			
		
}

결과값

abcdefgHIJKLMN
defg
7
ABCDEFG
hijklmn
d
2
true
abc de fg
zbcdefg
opqrstu
kkkkefg

String의 문제점

메모리의 과소비, String객체의 경우 처음 초기화된 데이터에 변화가 생기면 기존것을 재활용 하지않고 새로운 것을 찾는다.

String 클래스의 대안?

String클래스의 새로운 메모리를 생성하는 문제로 인해 속도가 느려지는 현상이 있다. 그래서 속도적인 측면에서 더욱 개선된StringBufferStringBuilder의 등장을 한다.

StringBuilder 및 StringBuffer 의 주요기능(메서드)

append : 문자열 추가
insert : 특정 위치에 문자열 추가
delete : 문자열 삭제
deleteCharAt : 특정 문자 하나 삭제

StringBuilder 및 StringBuffer 예제

package sutdy.java.ex17;

public class StringBuilderClass {

	public static void main(String[] args) {
		
		StringBuilder sb = new StringBuilder("abcdefg");
		
		sb.append("hijklmn");
		System.out.println(sb);
		
		sb.insert(3, "aaaa");//3번째 이후로 삽입
		System.out.println(sb);
		
		sb.delete(3, 5); //3번째 자리에서 5번째 자리 앞에 까지 지운다.
		System.out.println(sb);
		
		sb.deleteCharAt(10); //10번째 문자 하나 지운다.
		System.out.println(sb);
	}
}

결과값

abcdefghijklmn
abcaaaadefghijklmn
abcaadefghijklmn
abcaadefghjklmn

날짜 (Calendar) 의 예제

날짜와 시간을 표할때 쓰는 Calendar클래스

package sutdy.java.ex17_api;

import java.util.Calendar;

public class CalendarClass {

	public static void main(String[] args) {
		
		Calendar cd = Calendar.getInstance();
		
		int year = cd.get(Calendar.YEAR); //년도
		int month = cd.get(Calendar.MONTH) + 1;  //월 은 0부터 시작하기 때문에 숫자 1을 더해준다.
		int day = cd.get(Calendar.DAY_OF_MONTH); //날짜
		int hour = cd.get(Calendar.HOUR_OF_DAY); //시
		int minute = cd.get(Calendar.MINUTE);//분
		int second = cd.get(Calendar.SECOND);//초
		
		
		System.out.println(year + "년" + month + "월" + day + "일");
		System.out.println(hour + "시" + minute + "분" + second + "초");
		
	}
}
profile
공부하며 예제풀이 정리

0개의 댓글