본문 바로가기

java.lang5

[Java] 표준 API #4 - Arrays, Wrapper, Math, Random [src github repo]- https://github.com/imjinbro/javaBasic [API 소개] 1) java.util.Arrays- 배열 수정과 관련한 메서드를 제공하는 유틸리티 클래스 : 모두 static 메서드- 알고리즘 공부할 때 기본적으로 Arrays가 제공하는 메서드를 만들어보는 것도 좋은 듯=> Arrays만이 아니라 util에 있는 것을 똑같이 구현해보는 것도 공부많이될 듯 - 레퍼런스 타입 비교 기준 : java.util.Comparable 구현 클래스 - 메서드 오버라이딩(오름, 내림차순 코딩)=> Arrays.binarySearch가 Comparable 변수 타입 표준화, compareTo를 사용함 : Arrays.=> Arrays.binarySearch 사용하지.. 2017. 10. 12.
[Java] 표준 API #2 - System, Class + java.lang.reflect [System]1) java.lang.System- jvm 위에서 실행되기때문에 운영체제의 모든 기능을 이용할 순 없지만 System으로 운영체제 일부 기능을 사용할 수 있음 (1) exit(2) gc - java.lang.Object.finalize(3) currentTimeMillis / nanoTime(4) getProperty / getPropertiespackage com.jinbro.source.stdapi.system; public class SystemTest { public static void main(String[] args) { /* exit : 프로세스 종료, 0은 정상종료 0이외의 값 비정상종료 System.exit(0); */ /* setSecurityManager : exit.. 2017. 10. 1.
[Java] java.lang 패키지 : Calendar, DateFormat, TimeZone 날짜와 시간은 프로그램에 있어서 아주 자주 사용되는 데이터이다.가령 타임라인이 있다고 하자. 타임라인에 쓰여진 글들은 말 그대로 타임순서대로 나열되어 있는 것이다.이때 필요한 것이 시간/날짜를 알 수 있는 클래스다.java.lang > java.util 패키지에서는 이러한 기능을 하는 표준클래스들이 있다. [Calendar 클래스]캘린더 클래스는 인터페이스다. 인터페이스인 이유는 나라마다 날짜를 계산하는 방법(우리나라 : 양력, 음력)이 문화와 지역에 따라 다르기 때문이다.캘린더 클래스에서는 기본적으로 날짜를 계산하는 메소드만 있고 나머지는 인터페이스를 구현하는 클래스에서 따로 구현을 해야한다.캘린더 클래스를 구현하여 양력을 계산하는 GregorianCalendar 클래스가 있다.api 참고 : http.. 2017. 1. 21.
[Java] java.lang 패키지 : StringBuilder, StringBuffer [StringBuilder와 StringBuffer]문자열에 대한 변경처리를 하기위한 클래스다.버퍼(문자열을 수정하기 위한 임시저장공간)에 기존 문자열을 저장해두고 수정하는 방식이다.버퍼의 크기는 최초 16이며, 생성자의 지정에 따라 크기를 지정할 수 있다. (버퍼 사이즈는 1글자 당 버퍼 크기 1)위의 클래스들로 작업할 때 최초 버퍼 크기가 맞지 않아 늘리는 작업이 필요한데, 이 작업은 자동으로 된다.버퍼의 크기는 실제 더 필요한 사이즈보다 2배정도 더 생성하는데, 불필요하게 크게 메모리에 할당되어 낭비될 수 있으므로 버퍼크기는 잘 예상하는 것이 좋다.두 클래스의 생성자, 메소드 형태, 기능이 거의 동일하다. [두 클래스의 차이점]멀티쓰레드 환경이냐 싱글쓰레드 환경이냐이다.다시말해 동시에 처리를 하는 .. 2017. 1. 20.
[Java] java.lang 패키지 : String [java.lang 패키지 클래스] : 자바의 기본 클래스 및 인터페이스 모음 패키지, 자동 import됨 [문자열 관련 클래스(String, StringBuffer, StringBuilder, StringTokenizer)] 1) String : 문자열을 데이터 타입(객체)로 선언하는 클래스이며, concat, replace 등 문자열을 조작하는 메소드를 멤버로 가지고 있다. => 문자열을 생성하는 방법은 객체 생성, 리터럴 2가지가 있음 => 리터럴로 생성하면 값이 같을 경우 같은 참조값을 갖기 때문에 == 으로 참조값을 비교했을 때 true를 반환함 [메소드] => concat : 기존 문자열에 다른 문자열을 붙일 때 사용하는 메소드 => replace : 문자열 중 일부를 변경할 때 사용하는 메소.. 2017. 1. 20.