Intro char 데이터는 String과는 다르게 변수를 선언할 때 작은따옴표로 묶어야 하고, 문자를 딱 하나만 저장할 수 있는 자료형이다. 기본 문법을 익히면서 char 데이터끼리 합치려는데 자꾸 에러가 나서 찾아보게 되었고, 이 글에서는 StringBuilder를 이용해서 char 데이터들을 String으로 합치는 방법에 대해 알아보고자 한다. StringBuilder StringBuilder는 정확하게는 java.lang.StringBuilder로, 자바의 표준 라이브러리인 java.lang 패키지에 포함되어 있다. java.util 패키지 안에 있는 클래스들은 다 import를 해 줘야 하지만 StringBuilder는 import 없이 사용할 수 있다. public class Main { pu..
Programming Language/Java
Intro 향상된 for문이라고도 불리는 자바의 for-each문은 초기값, 조건식, 증감식을 하나하나 다 지정해 줘야 했던 기존의 for문보다 간결하게 사용된다. 굳이 비유하자면 파이썬의 리스트 함축쯤 된다. 하지만 자바의 for-each는 문법 특성상 사용할 수 있는 환경이 약간 제한되어 있다. 또한 인덱스를 사용할 수 없으며, 무조건 배열/리스트 등 iterable한 자료형을 사용해야 하는데 이 값을 수정할 수 없다. 문법 for (자료형 변수명: 배열명) { 실행문 } 예제 1. for-each를 사용하여 array 배열의 값 구하기 입력 import java.util.*; public class Test2 { public static void main(String[] args) { Scanner..
1. ArrayList와 Collections.min, Collections.max 사용하기import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); ArrayList array = new ArrayList(); for (int i = 0; i < n; i++) { array.add(sc.nextInt()); } System.out.print(Collections.min(array)); System.out.print(" " + Collections.max(array)); } }이게 내 코드인데 채점에 굉장히 오랜 시..
1. 배열을 사용해 풀기 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] array = new int[n]; int sum = 0; for (int i=0; i
ArrayList 참고: [Java] 배열(Array)과 리스트(List) 자료구조로서의 배열과 리스트 배열(Array) - 처음부터 크기가 정해져 있음 -> 실제 데이터의 개수와 상관없이 지정한 크기만큼의 메모리가 사용됨 - 인덱스 사용 가능 - 데이터 중복 허용 - 검색 O( wwwept.tistory.com nextInt 참고: [Java] Scanner next(), nextInt(), nextLine(), split() next()공백을 기준으로 입력받음(공백 전, 즉 Space나 Enter(\n) 전까지)StringnextInt()마찬가지로 공백을 기준으로 입력받음그래서 nextInt 뒤에 바로 nextLine을 사용할 경우, \n을 입력하면 nextLine으로 입력 wwwept.tistory..
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int t = sc.nextInt(); int[] array = new int[t]; for (int i=0; i
자료구조로서의 배열과 리스트 배열(Array) - 처음부터 크기가 정해져 있음 -> 실제 데이터의 개수와 상관없이 지정한 크기만큼의 메모리가 사용됨 - 인덱스 사용 가능 - 데이터 중복 허용 - 검색 O(1), 추가/삭제 O(n) 순차 리스트(Sequential List) - 배열의 문제점(데이터가 저장되지 않았는데도 메모리가 낭비되는 것)을 해결하기 위한 자료구조 -> 배열과 아주 유사하지만 데이터를 빈틈없이 채운다는 것이 특징 - 인덱스 사용 가능 - 데이터 중복 허용 연결 리스트(Linked List) - 한 노드는 실제 데이터를 저장하는 공간과 다음 노드의 위치를 저장하는 공간으로 구성되어 있음 - 메모리의 공간을 연속적으로 사용할 필요가 없음(물리적 연결 X, 논리적 연결 O) - 검색 O(n)..
1. 기본 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int A = sc.nextInt(); int B = sc.nextInt(); System.out.println((A+B) + "\n" + (A-B) + "\n" + (A*B) + "\n" + (A/B) + "\n" + (A%B)); sc.close(); } } 2. printf(포매팅, formatting) 사용 import java.util.Scanner; public class Main { public static void main(String[] args) { Scan..
1. LocalDate, ZoneId 이용 import java.time.ZoneId; import java.time.LocalDate; class Main { public static void main(String[] args) { LocalDate now = LocalDate.now(); LocalDate seoul = LocalDate.now(ZoneId.of("Asia/Seoul")); System.out.println(seoul); } } 2. System.currentTimeMillis(), SimpleDateFormat 이용 System.currentTimeMillis()를 통해 Unix epoch(1970-01-01) 이후 경과된 시간을 long 타입의 밀리 세컨드로 return받고 Sim..