전체보기293 java.util.Vector 주요 메소드 [1/1] [ Vector Class ] 컬렉션 프레임워크 중 List 계열의 한 종류 ArryaList Class와 동일한 인터페이스를 상속받은 클래스 ArrayList Class와 달리 동시 사용을 안전하게 처리할 수 있도록 설계된 클래스 (동기화 처리 가능) 일반적인 경우 ArrayList보다 무겁기 때문에 동기화 처리가 필요한 경우에 주로 사용 ArrayList와 Vector의 관계는 문자열 클래스인 StringBuilder와 StringBuffer 클래스의 관계와 비슷합니다. 동일 데이터를 여러 곳에서 동시에 처리하기 위한 장치들이 포함된 클래스가 Vector와 StringBuffer입니다. 여러 곳에서 동시에 하나의 자원을 사용할 대 문제없이 동작하도록 하는 기능을 "동기화 처리"라고 합니다. 하지만 미.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.util.ArrayList 주요 메소드 [1/1] [ ArrayList Class ] 컬렉션 프레임워크 중 List 계열의 한 종류 일반 배열을 조금 더 쉽게 사용할 수 있도록 함 일반 배열과 원리나 구조는 다르지 않습니다. 다만, 배열의 사이즈를 조정하거나 중간에 값을 삽입하거나 하는 등의 번거로운 작업이 클래스 내의 메소드로 미리 작성되어 있어 편리하게 사용할 수 있습니다. 컬렉션 프레임워크의 정확한 개념은 아래 링크를 참조하시면 됩니다. 2019/12/10 - [JAVA/기본 문법] - 컬렉션 프레임워크(컬렉션 API)_기본 개념 [1/4] [ 생성자 ] new ArrayList() : 기본 크기가 10인 배열 생성 new ArrayList(기본크기) : 기본 크기를 지정 (배열이 다 차면 기본크기만큼 사이즈가 증가함) new ArrayList().. ▸JAVA/라이브러리(API) 2019. 12. 10. 컬렉션 프레임워크(컬렉션 API)_기본 개념 [1/4] [ 컬렉션 프레임워크 ] 여러 가지 자료구조 알고리즘을 미리 구현하여 데이터를 효율적으로 처리할 수 있도록 함 C언어의 연결리스트와 같은 개념 등을 하나의 클래스로 구현하여 쉽게 사용 가능 컬레션 프레임워크는 List, Set, Map 계열로 나뉘어집니다. [ List 계열 ] 배열 또는 연결리스트 자료구조와 동일한 구조 (순서를 가지는 자료 구조) 기존 배열과 연결리스트를 편하게 사용할 수 있도록 클래스가 구성되어 있음 ArrayList : 일반 배열을 다루는 클래스, 동기화 처리가 불가능 Vector : ArrayList와 동일하나 동기화 처리가 가능하기 때문에 속도는 상대적으로 느림 LinkedList : 연결리스트 자료구조 구현 따라서 데이터 검색과 기존 데이터 변경이 잦은 구조일 때는 Array.. ▸JAVA/기본 문법 2019. 12. 10. java.util.regex 주요 메소드 [1/1] [ regex 패키지 ] 정규표현식을 다루는 패키지 [ Pattern 클래스] 정규표현식의 컴파일된 버전 정규표현식과 원본 문자열을 객체화(Matcher class)할 수 있는 메소드 제공 [ Matcher 클래스 ] Pattern 클래스의 메소드를 통해 객체화된 원본 문자열 Matcher 클래스의 객체(인스턴스)를 통해 정규표현식을 이용한 다양한 편집 가능 실제로 정규표현식을 사용하는 순서대로 정리해보겠습니다. 정규표현식에 대한 설명은 아래 두 가지 글을 참조하시면 됩니다. 2019/12/10 - [JAVA/기본 문법] - 정규표현식 (메타문자와 주의사항) [1/2] 2019/12/10 - [JAVA/기본 문법] - 정규표현식 (작성 방법 및 전방탐색, 후방탐색) [2/2] [ Pattern.ma.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.util.Random 주요 메소드 [1/1] [ 랜덤 클래스 (Random Class ] 난수 발생 관련 함수 Math 클래스의 난수 생성과 동일한 기능의 메소드를 포함하여, 다른 여러 메소드 보유 랜덤 클래스 인스턴스 생성 후 사용 가능 [ 생성자 ] () : 무작위 난수 생성 (long seed) : 매개변수의 값을 기초로 난수를 발생시킴 seed값을 주면 기초값이 생기기 때문에 다른 인스턴스에서도 동일한 난수가 계속 생성됩니다. 따라서 실제로는 사용되지 않으며 같은 환경에서 여러 번 테스트를 할 때 사용됩니다. C언어에서 난수 생성 기초값을 시간으로 하는 것을 보아 Java도 비슷할 것으로 유추됩니다. 아래와 같이 seed값을 지정해줄 경우 같은 seed값을 가진 인스턴스의 난수는 항상 동일합니다. package study.first; im.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.util.StringTokenizer 주요 메소드 [1/1] [ StringTokenizer Class ] C언어 strtok의 로직과 유사하지만 원본을 훼손하지 않음 문자열을 특정 문자열(구분자)로 나누어 (Token) 및 저장 및 처리 String 클래스의 split()과 비슷하지만, 배열이 아닌 인스턴스 객체를 만들어 저장 인스턴스의 클래스 메소드를 통해 실행시마다 쪼개서 문자열을 반환받음 java.util 패키지는 기본 패키지가 아니기 때문에 import 해줘야 합니다. String의 split() 메소드와 비슷한 것 같지만 작동 방식이 달라 상황에 따라 더 편리한 경우가 생깁니다. 굳이 배열 저장공간을 따로 만들지 않고도 문자를 나눠서 확인할 수 있습니다. (필요한 문자열만 뽑아내기에 적합) [ 생성자 ] (String str) : 공백 기준으로 문자열.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.Enum (열거형) 주요 메소드 [1/1] 이전 글에서 사용한 코드를 그대로 써서 주요 메소드를 정리해보았습니다. package study.first; public class Study { public static void main(String[] args) { } } enum FinalValues { // enum 클래스의 열거 상수 (자동으로 public static final로 선언) CLOCK_SIZE(100), CLOCK_COLOR("White"), BOOK_SIZE(200), BOOK_COLOR("Blue"); // 값을 담을 필드 생성(private 캡슐화) private int size; private String color; // size 생성자 선언 FinalValues(int size) { this.size = size; } .. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.Math (수학계산) 주요 메소드 [1/1] [ Math Class ] 생성자가 private으로 선언되어 있어 인스턴스 생성 불가 모든 필드와 메소드는 static [ abs() ] 절대값 반환 반환 타입은 인자로 전달한 타입과 같음 package study.first; public class Study { public static void main(String[] args) { double a = -12.5; double b = Math.abs(a); System.out.println(b);// 12.5 } } [ ceil() ] 소숫점 값이 있다면 올림값 반환 double 타입 반환만 해주기 때문에 float변수에 담기 위해서는 형변환 필요 argument는 자동으로 double 타입 반환 본래 float 타입 실수는 저장하기 전에 doub.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.StringBuilder (문자열) 주요 메소드 [2/2] [ reverse() ] 문자열을 거꾸로 뒤집어줌 package study.first; public class Study { public static void main(String[] args) { StringBuilder a = new StringBuilder("Hello World"); a.reverse(); System.out.println(a); // "dlroW olleH" } } [ setCharAt() ] 특정 위치의 문자 변경 insert()가 원본 문자열 중간에 삽입이라면 setCharAt()은 해당 위치의 문자를 변경해줌 package study.first; public class Study { public static void main(String[] args) { StringBuil.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.StringBuilder (문자열) 주요 메소드 [1/2] StringBuilder와 StringBuffer 클래스도 String 클래스와 같이 문자열을 다루는 클래스입니다. 다만, String 클래스가 문자열을 생성자로 넣어 인스턴스를 한 번 생성하고 나면 인스턴스가 가진 문자열 값을 변경하지 못하는 단점을 보완한 클래스입니다. 즉, 같은 인스턴스 안의 문자열(char 배열) 필드 값을 추가하거나 변경할 수 있도록 되어 있습니다. 또한 원본 문자열을 바꿀 수 있는만큼 문자열을 다루는 메소드도 더 많이 포함되어 있습니다. 두 가지 클래스는 모두 쓰임과 메소드가 같지만, StringBuffer는 여러곳에서 동시에 같은 문자열 인스턴스에 접근할 때 중복 점유를 막을 수 있는 장치가 되어 있습니다(동기화 처리). 때문에 StringBuilder에 비해 좀 더 무겁.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.String (문자열) 주요 메소드 [4/4] [ format() ] static 메소드로 인스턴스 없이 사용 가능 C언어 printf() 와 비슷한 형태로 형식지정자를 사용해서 출력 가능 1. conversion (형식지정자) 여러가지 형식지정자가 있지만 가장 많이 쓰이는 것은 %d(10진수 정수형), %f(실수형), %s(문자열)이 있습니다. 이 외에도 %x(16진수 정수형), %o(8진수 정수형)이 있습니다. C언어와 거의 같습니다. 형식지정자 및 형식지정자와 짝이 맞는 값을 제외하고 다른 옵션은 선택사항입니다. 2. argument_index 옵션 (1$ : 첫번째 인자, 2$ : 두번째 인자...) 원래 순서대로 출력되는데 그 순서를 바꿔서 출력이 가능합니다. 하지만 숫자를 변수로 사용할 수 없기 때문에 어차피 수동으로 코딩해야해서 자.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.String (문자열) 주요 메소드 [3/4] [ split() ] 문자열을 구분자로 나눠서 배열을 생성해줌 나눌 갯수도 인자값으로 넣어주면 앞에서 갯수만큼만 나눠주고 뒤는 나누지 않음 package study.first; public class Study { public static void main(String[] args) { String a = "aaaaaBaaaBaaaBaaaa"; String[] list = a.split("B"); // 모두 나눔 for (String num : list) System.out.println(num); } } package study.first; public class Study { public static void main(String[] args) { String a = "aaaaaBaaaBaaaBaaa.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.String (문자열) 주요 메소드 [2/4] [ indexOf() ] 원하는 인덱스(위치)부터 앞에서 뒤로 순서대로 문자열 검색 원하는 인덱스를 명시하지 않으면 가장 앞에서부터 뒤로 검색 해당 문자열이 있으면 해당 인덱스를, 없으면 -1 반환 (boolean 타입이 아닌 int 타입 반환) package study.first; public class Study { public static void main(String[] args) { String a = new String("Hello World"); System.out.println(a.indexOf("H")); // 0 System.out.println(a.indexOf("H", 5)); // -1 (앞에서 다섯 번째 글자부터 검색) System.out.println(a.indexOf("h").. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.String (문자열) 주요 메소드 [1/4] 문자열 처리를 돕는 클래스입니다. 메모리 구조편에서 살펴봤듯이 String 타입은 변수가 아니라 클래스의 인스턴스입니다. 즉, 객체이자 참조변수가 되는 것이죠. 원시타입 변수가 아닌 모든 타입은 어떠한 클래스의 인스턴스입니다. String a = "abc" 또는 String a = new String("abc") 형태로 String Class의 인스턴스를 하나 생성했다면 java.lang.String 클래스에 생성자를 문자열로 넣어주고 인스턴스를 생성했다는 의미입니다. 그래서 a.method()형태로 해당 클래스에 포함된 메소드를 사용할 수 있게 되는 것입니다. 또한 system.out.println(a) 형태로 출력할 수 있는 것은 String Class에서 toString() 메소드가 생성자로.. ▸JAVA/라이브러리(API) 2019. 12. 10. java.lang.Object 주요 메소드 [1/1] 모든 클래스가 기본적으로 상속받는 Object 클래스의 주요 메소드입니다. [ hashCode() ] 인스턴스가 저장된 힙 영역의 주소값을 해쉬값으로 변환해서 반환 서로 다른 인스턴스 또는 객체는 다른 주소에 저장돼 있으므로 다른 값 출력 package study.first; public class Study { public static void main(String[] args) { Example a = new Example(); Example b = new Example(); System.out.println(a.hashCode()); System.out.println(b.hashCode()); } } class Example { int a = 1; } [ getClass() ] 인스턴스가 가지고.. ▸JAVA/라이브러리(API) 2019. 12. 10. 이전 1 ··· 11 12 13 14 15 16 17 ··· 20 다음 💲 추천 글 반응형