Programming/Java
-
[Java] 객체타입 SetProgramming/Java 2020. 9. 10. 01:06
객체 타입 Set 객체 타입을 Set에 추가할 경우 같은 속성값을 가지고 있는 객체이더라도 다른 객체로 인식한다. 그 이유는 객체를 비교하여 Set에 추가할 때 객체의 속성으로 비교하는 것이 아니라 객체의 주소값을 기준으로 비교하기 때문에 다음 객체들은 각각 다른 객체로 인식되어 Set에 중복으로 저장되는 것이다. 예제 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 import java.util.HashSet; import java.util.Set; public class Main { static class Person { private String name; private int age; public ..
-
[Java] StringBuilder class 함수Programming/Java 2020. 7. 3. 15:34
StringBuilder https://docs.oracle.com/javase/7/docs/api/java/lang/StringBuilder.html append(Object o) StringBuilder에서 가장 많이 사용하는 함수로 문자열 데이터 끝에 문자 형태로 인자가 추가된다. insert(int index, Object o) StringBuilder 객체의 index위치에 문자 형태의 o가 삽입된다. delete(int index), delete(int start, int end) index에 해당하는 char를 지운 StringBuilder 객체를 반환해준다. indexOf(String str), lastIndexOf(String str) 각각 StringBuilder 객체에서 처음으로 등장..
-
[Java] CollectionProgramming/Java 2020. 3. 31. 23:03
List Interface List Inteface 구조는 데이터가 저장된 순서를 보장하며, 중복된 데이터 저장이 가능하다. 데이터를 저장하면 인덱스가 자동으로 부여되고 부여된 인덱스를 통해 데이터의 검색 및 삭제가 가능하다. 선형적 구조를 갖는다. (1) ArrayList 저장 용량 보다 많은 데이터가 들어오면 자동으로 용량이 늘어난다. 중간에 데이터를 추가하거나 삭제할 경우에는 인덱스가 한 칸씩 뒤로 밀리거나 당겨진다. (2) LinkedList LinkedList는 다음 데이터를 참조하는 포인터를 가지고 있다. 인접한 데이터를 링크하여 체인처럼 관리가 가능하다. 중간에 데이터를 추가/삭제하는 경우에 링크만 변경하면 되기 때문에 처리 속도가 빠르다. (3) Vector ArrayList와 동일한 구조..
-
[Java] 토막글Programming/Java 2020. 3. 11. 23:39
변수 변수(Variable) 는 값(Value)이 저장된 메모리의 위치(주소)에 붙여진 이름 데이터를 저장하기 위한 메모리 공간으로 그릇에 비유할 수 있다. Java 자료형에는 기본 자료형(primitive type)과 참조형(reference type)이 있다. 자료형 기본 자료형에는 정수, 실수, 문자, 논리값 등과 같은 자료형이 있고, 참조 자료형에는 배열, 클래스, 인터페이스 등이 있다. 기본 자료형 변수는 그것이 나타내고자 하는 값을 가지고 있는 반면, 참조 자료형 변수는 값에 대한 메모리 주소를 가지고 있다. 리터럴 리터럴은 데이터 그 자체를 뜻한다. 변하지 않는 데이터를 의미하는 것 예를들어, int a = 1; 에서 a는 변수, 1는 리터럴이다. 문자열 리터럴은 이중 인용 부호(", ")로..
-
[Java] Hash, HashMapProgramming/Java 2019. 12. 31. 16:51
Hash의 개요 설명에 앞서 배열은 인덱스를 이용하여 자료의 검색이 한 번에 이루어지기 때문에 빠른 검색 속도를 가지는 장점이 있지만, data의 추가/삭제에 있어서는 데이터가 이동해야 하기 때문에 많은 시간이 소요된다. 연결리스트는 데이터의 추가/삭제시 노드의 참조값만 수정해 줌으로써 빠른 처리가 가능하다. 그러나 데이터를 검색할 때는 해당 노드를 찾기 위하여 일일이 탐색을 해야하기 때문에 데이터의 수가 많아질수록 효율이 떨어지는 구조이다. 이러한 한계를 극복하기 위하여 제시된 방법이 바로 Hash이다. Hash의 기본 개념 Hash는 내부적으로 배열을 사용하기 때문에 배열의 장점인 빠른 검색 속도를 갖는다. 또한 데이터의 추가/삭제시 이루어지는 비효율적인 이동을 극복할 수 있도록 특별한 알고리즘을 이..
-
[Java] String 함수Programming/Java 2019. 11. 15. 17:02
substring(int start) 지정한 문자열에서 start부터 문자열 끝까지만 유지한다. substring(int start, int end) 지정한 문자열에서 start부터 end 앞까지만 유지한다. replace(String target, String replcament) 지정한 문자열에서 taret과 같은 문자를 찾아 replcement로 치환하는 함수 replaceAll(String regex, String replcament), replaceFirst(String regex, String replcament) replace() 함수와 다르게 첫번째 인자값으로 정규식이 들어간다. replaceAll은 특수문자로 치환이 어렵다. split(String st) 지정한 문자를 st를 기준으로 문..