Java
-
Java - Map 사용법 (Hashtable, HashMap, ConcurrentHashMap)Java 2022. 6. 15. 23:59
Map이란? - Map은 key value 형태의 자료구조 - key를 이용해서 value 값을 얻는다 자바의 Map은 인터페이스이고 Map 인터페이스를 구현한 클래스는 다양합니다. 대표적으로 Hashtable, HashMap, ConcurrentHashMap이 있습니다. Hashtable - 주요 메소드에 synchronized 키워드 선언되어 있음 - key, value에 null 허용하지 않음 HashMap - synchronized 키워드 없음 - key, value에 null 입력 가능 ConcurrentHashMap - thread-safe - key, value에 null 허용하지 않음 - putIfAbset 메소드 Map 인터페이스 주요 method - put() - get() - clea..
-
Java - 자바 제곱근, 거듭제곱 구하는 방법 (Math class)Java 2022. 6. 9. 19:57
안녕하세요. 이번 포스팅은 자바 Math 클래스를 이용하여 제곱근, 거듭제곱 구하는 방법을 알아보겠습니다. java.lang.Math 클래스는 수학에서 자주 쓰이는 함수들을 구현해 놓은 클래스입니다. 제곱근(루트) 구하기 Math.sqrt() 를 이용하여 제곱근을 구할 수 있습니다. import java.lang.Math; class HelloWorld { public static void main(String[] args) { double value = Math.sqrt(9); System.out.println(value); // 3.0 } } 제곱 구하기 Math.pow(double, double) - 첫번째 인자는 밑수이고 두번째 인자는 지수입니다. - Math.pow(5, 2)는 5의 2제곱을 의..
-
Java - 자바 List 사용법Java 2022. 6. 9. 19:07
이번 포스팅은 자바 코딩을 하면서 많이 사용하는 클래스 중 하나인 리스트에 대해서 알아보겠습니다. List는 Array와 다르게 크기가 동적인 자료형으로 데이터를 계속 추가 가능 List 종류 ArrayList LinkedList Vector Stack List 종류 특징 ArrayList 동기화 지원 안함 가장 빠름 null 허용 인덱스 이용 검색 빠름 대량의 데이터 추가, 삭제 시 성능이 떨어짐 LinkedList 동기화 지원 안함 다음 자료의 위치정보 가지고 있음 속도가 느림 내부 인덱스가 없음 많은 데이터 추가, 삭제 시 용의 검색시 느림 Vector 동기화 지원 ArrayList보다 느림 Stack 동기화 지원 LIFO 가능 List의 생성 import java.util.ArrayList; im..
-
Java - 리스트(배열) 순회하는 방법 (loop, 반복문)Java 2022. 6. 9. 18:52
안녕하세요. 이번 포스팅은 배열을 순회하는 다양한 방법에 대해서 알아보겠습니다. List companies = Arrays.asList("apple", "tesla", "google"); 다음과 같은 list가 있을 때 배열을 순회하는 방법입니다. for loop for (int i = 0; i < companies.size(); i++) { System.out.println(companies.get(i)); } 가장 기본적인 for loop 입니다. 다음과 같은 문법도 가능합니다. for (String company : companies) { System.out.println(company); } Iterator java.util.Iterator 클래스를 이용해서 리스트 루프를 돌릴 수 있습니다. It..
-
Java - 자바 String 사용법Java 2022. 6. 9. 18:46
안녕하세요. 이번 포스팅은 자바에서 문자열을 다룰 때 쓰는 String 클래스에 대해서 알아보겠습니다. 객체 선언 및 정의 String str = "Hello"; String str2 = new String("Hello"); 문자열 길이 String str = "hello"; System.out.println(str.length()); // 5 출력 문자열 더하기 String concat(String str) - str 문자열을 현재 문자열 뒤에 붙인다. 문자열은 + 연산자로도 붙일 수 있다. String str1 = "Hello" + " World"; String str2 = "Hello".concat(" World"); System.out.println(str1); System.out.println(..
-
Java - 많이 사용하는 자바 라이브러리Java 2022. 6. 9. 18:10
자바를 쓸때 자주 사용하는 라이브러리에 대해서 알아봤습니다. 2021년에 알아야할 탑 12 자바 라이브러리 (JAVA Top 12 Java Library) 1. JAVA Standard Libraries java.lang: 자바 프로그래밍에 필요한 기본적인 클래스들 java.net: 네트워크 어플리케이션을 위한 클래스들 java.util: Collections 프레임워크, 이벤트 모델, date, time 유틸 등 java.math: 수학과 관련된 클래스들 java.io: data stream, 파일 시스템, serialization 등 2. Log4j 이번에 취약점 나온 그 Log4j 3. SLF4J logging framework 4. Apache Commons 다양한 resuable componen..
-
Java - stream 정렬(sort)Java 2022. 6. 9. 16:11
자바 스트림내 요소들을 정렬하는 방법 샘플 데이터 (Person) public class Person { private Long id; private String name; } id name 1 curry 2 harden 3 lebron Comparator 파라미터 넘겨서 정렬하기 sorted 파라미터에 Comparator를 구현해서 넘겨주면 됩니다. id 기준 정렬 List sortedPersons = persons.stream() .sorted(Comparator.comparingLong(Person::getId)) .collect(Collectors.toList()); 결과 curry harden lebron Comparator 파라미터 넘겨서 역순으로 정렬하기 .reversed()를 호출하면 역순..
-
Java - foreach에서 index값 사용하기Java 2022. 6. 8. 18:58
java stream foreach를 사용할 때 index 값을 이용하는 예제입니다. 보통 for (int i = 0; i < 10; i++) 이렇게 사용하면 index 값을 바로 가져올 수 있습니다. Java stream foreach를 쓸 때는 어떻게 index 값을 가져오는지 확인해보겠습니다. import java.util.Arrays; import java.util.stream.IntStream; import java.util.List; public class Example { public static void main(String args[]) { List list = Arrays.asList("aa", "bb", "cc"); IntStream.range(0, list.size()).forEac..