Languague/Java(108)
-
Languague/Java
2022.03.03
[Java] 자바 최신 버전 수동 업데이트 방법
자바로 개발되어있는 프로그램을 실행시키기 위해서는 컴퓨터에 자바가 설치되어 있어야 합니다. 하지만 가끔 구버전의 자바를 사용하고 있어 프로그램들이 정상적으로 실행되지 않는 경우들이 있습니다. 이럴때는 자바를 수동으로 업데이트 시켜주어야 합니다. 이번 포스팅에서는 자바를 최신 버전으로 수동 업데이트 하는 방법에 대해 알아보도록 하겠습니다. 자바 최신 버전 수동 업데이트 방법 1. 작업표시줄 검색창에서 제어판을 검색한 후 제어판으로 들어갑니다. 2. 제어판에서 프로그램 아이콘을 클릭합니다. 3. Java 아이콘을 클릭하여 Java 제어판으로 들어갑니다. 4. Java 제어판의 상단 업데이트 탭을 누른 뒤 지금 업데이트 버튼을 누릅니다. 5. 설치버튼을 눌러 Java 업데이트를 시작합니다. 6. 자바 최신버전..
-
Languague/Java
2022.03.02
[Java] 자바 버전 변경하는 방법 ( JDK 8 -> JDK 17)
자바 언어로 개발하는 프로젝트에서 협업을 해야 할 상황이 있다면 개발자들끼리 JDK 버전을 맞춰주셔야 합니다. JDK 버전이 다르면 컴파일의 최적화 과정에서 서로 .class파일이 다르게 생성될 수 있고 이로 인해 같은 소스코드로 작성된 프로그램이라도 다르게 동작할 수 있기 때문입니다. ※ 자신이 사용하고 있는 Java 버전을 확인하고 싶다면 아래 글을 참고해주세요. [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) 자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생 coding-..
-
Languague/Java
2022.03.01
[Java] 자바(JDK) 버전 확인 방법 (cmd 명령어)
자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생성할 수 있고 이로 인해 같은 소스코드라도 동작이 상이할 수 있기 때문입니다. 자바의 버전을 맞추기 위해서는 먼저 내 PC에 설치되어 있는 자바의 버전을 아는 것이 첫 번째 순서입니다. 이번 포스팅에서는 내 PC에 설치되어있는 자바 버전을 확인하는 방법에 대해 알아보도록 하겠습니다. 윈도우에서 자바 버전 확인 방법 (간단한 cmd 명령어) 1. 윈도우 검색창에서 cmd를 입력 후 명령 프롬프트를 실행합니다. 2. 명령 프롬프트 창에서 java -version 명령어를 입력합니다. (명령어 띄워쓰기 주의..
-
Languague/Java
2021.05.28
1
[Java] 자바 두 날짜 사이의 차이 계산하기
자바에서 가끔 두 날짜의 간격 예를 들어 두 날짜의 일수나, 시간, 분, 초등을 구해야 할 때가 있습니다. 이럴 때는 대개 두 날짜를 getTime을 활용하여 밀리 세컨드로 변환한 후 두 날짜의 차이를 계산한 뒤 원하는 단위로 바꾸는 작업을 통해 계산합니다. Date.getTime() Date.getTime()은 Date를 밀리세컨드로 변환해서 long형 숫자 데이터로 반환합니다. 이를 이용하면 산술 연산으로 시간 차이를 쉽게 구할 수 있습니다. 1000밀리초는 1초로 계산되므로 getTime()으로 구한 값을 밀리초를 1000으로 나누면 초를 얻습니다. 이 초를 기본으로 하여 다른 시간 단위들도 계산할 수 있습니다. 초 : / 1000 분 : / (1000 * 60) 시 : / (1000 * 60 * ..
-
Languague/Java
2021.05.25
[Java] 날짜 포맷의 유효성 체크하기(Validation Date)
개발을 하다보면 데이터베이스에 지정된 포맷의 날짜를 넣어야 할 경우들이 종종 있고 그렇게 되면 자연스럽게 이 데이터가 정해진 날짜 포맷에 맞는지 검증하는 로직이 들어가야 합니다. 날짜 포맷의 유효성 검사하기 (Validation Date) public class test { public static void main(String[] args) { String exDate1 = "2021/01/01"; String exDate2 = "20210101"; System.out.println(checkDate(exDate1)); System.out.println(checkDate(exDate2)); } public static boolean checkDate(String checkDate) { try { Sim..
-
Languague/Java
2021.05.24
[Java] 자바 문자열(String)에 " 큰 따옴표 넣기
자바에서는 문자열 String값의 값의 처음과 끝을 " " 이렇게 큰 따옴표로 인식하고 있습니다. 그렇기에 문자열 안에 큰 따옴표 자체를 넣을때는 \" 이런식으로 이스케이프 시퀀스를 활용하여 표현해주어야 합니다. 자바 문자열안에 큰 따옴표(") 넣기 String example = "\"url\" : \"https://www.naver.com\""; System.out.println(example); 위와 같이 \" 이스케이프 시퀀스를 통해 따옴표를 나타내면 문자열의 열고 닫음을 표현하는 예약문자로써의 기능이 아닌 따옴표 그 자체로 문자열 안에 포함시킬 수 있습니다. 이스케이프 시퀀스 위와 같이 이스케이프 시퀀스는 \와 다른 문자를 결합하여 프로그래밍 언어 특성상 표현할 수 없는 문자를 표현하거나 컴퓨터를..
-
Languague/Java
2021.05.20
1
[Java] 자바 숫자에 천단위 콤마찍기 (금액 표기하기)
자릿수가 많은 금액은 가독성을 향상시키기위해 3자리수 금액의 1000단위마다 콤마( , )를 찍습니다. 단 콤마( , )는 문자열이기 때문에 String타입에 저장해야 합니다. 숫자 사이에 콤마( , )를 찍는 방법은 대표적으로 java.text.DecimalFormat 클래스를 활용하는 방법과 정규식을 활용하는 방법이 있습니다. DecimalFormat 클래스 활용 int amount = 1000000000; DecimalFormat df = new DecimalFormat("###,###"); String money = df.format(amount); System.out.println(money); 정규식 활용방법 String amount = "1000000000"; amount = amount.r..
-
Languague/Java
2020.09.11
1
[Java] 큰 숫자(실수) 다루기 BigDecimal 사용법 & 예제 총정리
BigDecimal을 사용해야 하는 이유 Type 범위 float 1.4E-45 ~ 3.4028235E38 double 4.9E-324 ~ 1.7976931348623157E308 소수점을 저장할 수 있는 타입인 float과 double은 소수점의 정밀도가 완벽하지 않아 값의 오차가 생길 수 있습니다. 특히 소수점 이하의 수를 다룰 때 double과 float은 사칙연산 시 정확한 값을 출력하지 않을 수 있는데요. 그 이유는 내부적으로 수를 저장할 때 이진수의 근사치를 저장하기 때문입니다. 그렇기에 미세한 숫자의 변동도 허용하지 않는 특히 돈과 소수점을 다룬다면 BigDecimal을 사용하셔야 합니다. BigDecimal은 속도는 느리지만 숫자가 어긋날 가능성을 미연에 방지할 수 있습니다. BigDeci..
-
Languague/Java
2020.09.10
6
[Java] 큰 숫자(정수) 다루기 BigInteger 사용법 & 예제 총정리
BigInteger를 사용해야 하는 이유 Type 범위 int -2,147,483,648 ~ 2,147,483,647 long -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 int는 메모리 크기는 4byte로 표현할 수 있는 범위는 -2,147,483,648 ~ 2,147,483,647이고 long은 메모리 크기는 8byte로 표현할 수 있는 범위는 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807입니다. 그 범위를 넘어서게 되면 모두 0으로 출력이 됩니다. 숫자의 범위가 저 범위를 넘을 경우는 잘 없겠지만 프로그램 개발 특히 돈과 관련된 개발이나 알고리즘 문제를 풀 때 항상 최악의 상황을 고려해야 하므로..
-
Languague/Java
2020.09.09
7
[Java] PriorityQueue(우선순위 큐) 클래스 사용법 & 예제 총정리
우선순위 큐(Priority Queue)란? 일반적으로 큐는 데이터를 일시적으로 쌓아두기 위한 자료구조로 스택과는 다르게 FIFO(First In First Out)의 구조 즉 먼저 들어온 데이터가 먼저 나가는 구조를 가집니다. PriorityQueue는 먼저 들어온 순서대로 데이터가 나가는 것이 아닌 우선순위를 먼저 결정하고 그 우선순위가 높은 엘리먼트가 먼저 나가는 자료구조입니다. 우선순위 큐는 힙을 이용하여 구현하는 것이 일반적입니다. 데이터를 삽입할 때 우선순위를 기준으로 최대힙 혹은 최소 힙을 구성하고 데이터를 꺼낼 때 루트 노드를 얻어낸 뒤 루트 노드를 삭제할 때는 빈 루트 노드 위치에 맨 마지막 노드를 삽입한 후 아래로 내려가면서 적절한 자리를 찾아서 옮기는 방식으로 진행됩니다. Priori..
-
Languague/Java 2022.03.03[Java] 자바 최신 버전 수동 업데이트 방법 자바로 개발되어있는 프로그램을 실행시키기 위해서는 컴퓨터에 자바가 설치되어 있어야 합니다. 하지만 가끔 구버전의 자바를 사용하고 있어 프로그램들이 정상적으로 실행되지 않는 경우들이 있습니다. 이럴때는 자바를 수동으로 업데이트 시켜주어야 합니다. 이번 포스팅에서는 자바를 최신 버전으로 수동 업데이트 하는 방법에 대해 알아보도록 하겠습니다. 자바 최신 버전 수동 업데이트 방법 1. 작업표시줄 검색창에서 제어판을 검색한 후 제어판으로 들어갑니다. 2. 제어판에서 프로그램 아이콘을 클릭합니다. 3. Java 아이콘을 클릭하여 Java 제어판으로 들어갑니다. 4. Java 제어판의 상단 업데이트 탭을 누른 뒤 지금 업데이트 버튼을 누릅니다. 5. 설치버튼을 눌러 Java 업데이트를 시작합니다. 6. 자바 최신버전..
-
Languague/Java 2022.03.02[Java] 자바 버전 변경하는 방법 ( JDK 8 -> JDK 17) 자바 언어로 개발하는 프로젝트에서 협업을 해야 할 상황이 있다면 개발자들끼리 JDK 버전을 맞춰주셔야 합니다. JDK 버전이 다르면 컴파일의 최적화 과정에서 서로 .class파일이 다르게 생성될 수 있고 이로 인해 같은 소스코드로 작성된 프로그램이라도 다르게 동작할 수 있기 때문입니다. ※ 자신이 사용하고 있는 Java 버전을 확인하고 싶다면 아래 글을 참고해주세요. [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) [Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) 자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생 coding-..
-
Languague/Java 2022.03.01[Java] 자바(JDK) 버전 확인 방법 (cmd 명령어) 자바(Java) 언어로 하나의 프로젝트를 다수의 인원이 협업을 해야하는 상황이라면 Java jdk 버전을 맞춰주시는 것이 좋습니다. 개발자마다 jdk버전이 다르면 컴파일 과정에서 .class파일을 다르게 생성할 수 있고 이로 인해 같은 소스코드라도 동작이 상이할 수 있기 때문입니다. 자바의 버전을 맞추기 위해서는 먼저 내 PC에 설치되어 있는 자바의 버전을 아는 것이 첫 번째 순서입니다. 이번 포스팅에서는 내 PC에 설치되어있는 자바 버전을 확인하는 방법에 대해 알아보도록 하겠습니다. 윈도우에서 자바 버전 확인 방법 (간단한 cmd 명령어) 1. 윈도우 검색창에서 cmd를 입력 후 명령 프롬프트를 실행합니다. 2. 명령 프롬프트 창에서 java -version 명령어를 입력합니다. (명령어 띄워쓰기 주의..
-
Languague/Java 2021.05.28 1[Java] 자바 두 날짜 사이의 차이 계산하기 자바에서 가끔 두 날짜의 간격 예를 들어 두 날짜의 일수나, 시간, 분, 초등을 구해야 할 때가 있습니다. 이럴 때는 대개 두 날짜를 getTime을 활용하여 밀리 세컨드로 변환한 후 두 날짜의 차이를 계산한 뒤 원하는 단위로 바꾸는 작업을 통해 계산합니다. Date.getTime() Date.getTime()은 Date를 밀리세컨드로 변환해서 long형 숫자 데이터로 반환합니다. 이를 이용하면 산술 연산으로 시간 차이를 쉽게 구할 수 있습니다. 1000밀리초는 1초로 계산되므로 getTime()으로 구한 값을 밀리초를 1000으로 나누면 초를 얻습니다. 이 초를 기본으로 하여 다른 시간 단위들도 계산할 수 있습니다. 초 : / 1000 분 : / (1000 * 60) 시 : / (1000 * 60 * ..
-
Languague/Java 2021.05.25[Java] 날짜 포맷의 유효성 체크하기(Validation Date) 개발을 하다보면 데이터베이스에 지정된 포맷의 날짜를 넣어야 할 경우들이 종종 있고 그렇게 되면 자연스럽게 이 데이터가 정해진 날짜 포맷에 맞는지 검증하는 로직이 들어가야 합니다. 날짜 포맷의 유효성 검사하기 (Validation Date) public class test { public static void main(String[] args) { String exDate1 = "2021/01/01"; String exDate2 = "20210101"; System.out.println(checkDate(exDate1)); System.out.println(checkDate(exDate2)); } public static boolean checkDate(String checkDate) { try { Sim..
-
Languague/Java 2021.05.24[Java] 자바 문자열(String)에 " 큰 따옴표 넣기 자바에서는 문자열 String값의 값의 처음과 끝을 " " 이렇게 큰 따옴표로 인식하고 있습니다. 그렇기에 문자열 안에 큰 따옴표 자체를 넣을때는 \" 이런식으로 이스케이프 시퀀스를 활용하여 표현해주어야 합니다. 자바 문자열안에 큰 따옴표(") 넣기 String example = "\"url\" : \"https://www.naver.com\""; System.out.println(example); 위와 같이 \" 이스케이프 시퀀스를 통해 따옴표를 나타내면 문자열의 열고 닫음을 표현하는 예약문자로써의 기능이 아닌 따옴표 그 자체로 문자열 안에 포함시킬 수 있습니다. 이스케이프 시퀀스 위와 같이 이스케이프 시퀀스는 \와 다른 문자를 결합하여 프로그래밍 언어 특성상 표현할 수 없는 문자를 표현하거나 컴퓨터를..
-
Languague/Java 2021.05.20 1[Java] 자바 숫자에 천단위 콤마찍기 (금액 표기하기) 자릿수가 많은 금액은 가독성을 향상시키기위해 3자리수 금액의 1000단위마다 콤마( , )를 찍습니다. 단 콤마( , )는 문자열이기 때문에 String타입에 저장해야 합니다. 숫자 사이에 콤마( , )를 찍는 방법은 대표적으로 java.text.DecimalFormat 클래스를 활용하는 방법과 정규식을 활용하는 방법이 있습니다. DecimalFormat 클래스 활용 int amount = 1000000000; DecimalFormat df = new DecimalFormat("###,###"); String money = df.format(amount); System.out.println(money); 정규식 활용방법 String amount = "1000000000"; amount = amount.r..
-
Languague/Java 2020.09.11 1[Java] 큰 숫자(실수) 다루기 BigDecimal 사용법 & 예제 총정리 BigDecimal을 사용해야 하는 이유 Type 범위 float 1.4E-45 ~ 3.4028235E38 double 4.9E-324 ~ 1.7976931348623157E308 소수점을 저장할 수 있는 타입인 float과 double은 소수점의 정밀도가 완벽하지 않아 값의 오차가 생길 수 있습니다. 특히 소수점 이하의 수를 다룰 때 double과 float은 사칙연산 시 정확한 값을 출력하지 않을 수 있는데요. 그 이유는 내부적으로 수를 저장할 때 이진수의 근사치를 저장하기 때문입니다. 그렇기에 미세한 숫자의 변동도 허용하지 않는 특히 돈과 소수점을 다룬다면 BigDecimal을 사용하셔야 합니다. BigDecimal은 속도는 느리지만 숫자가 어긋날 가능성을 미연에 방지할 수 있습니다. BigDeci..
-
Languague/Java 2020.09.10 6[Java] 큰 숫자(정수) 다루기 BigInteger 사용법 & 예제 총정리 BigInteger를 사용해야 하는 이유 Type 범위 int -2,147,483,648 ~ 2,147,483,647 long -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 int는 메모리 크기는 4byte로 표현할 수 있는 범위는 -2,147,483,648 ~ 2,147,483,647이고 long은 메모리 크기는 8byte로 표현할 수 있는 범위는 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807입니다. 그 범위를 넘어서게 되면 모두 0으로 출력이 됩니다. 숫자의 범위가 저 범위를 넘을 경우는 잘 없겠지만 프로그램 개발 특히 돈과 관련된 개발이나 알고리즘 문제를 풀 때 항상 최악의 상황을 고려해야 하므로..
-
Languague/Java 2020.09.09 7[Java] PriorityQueue(우선순위 큐) 클래스 사용법 & 예제 총정리 우선순위 큐(Priority Queue)란? 일반적으로 큐는 데이터를 일시적으로 쌓아두기 위한 자료구조로 스택과는 다르게 FIFO(First In First Out)의 구조 즉 먼저 들어온 데이터가 먼저 나가는 구조를 가집니다. PriorityQueue는 먼저 들어온 순서대로 데이터가 나가는 것이 아닌 우선순위를 먼저 결정하고 그 우선순위가 높은 엘리먼트가 먼저 나가는 자료구조입니다. 우선순위 큐는 힙을 이용하여 구현하는 것이 일반적입니다. 데이터를 삽입할 때 우선순위를 기준으로 최대힙 혹은 최소 힙을 구성하고 데이터를 꺼낼 때 루트 노드를 얻어낸 뒤 루트 노드를 삭제할 때는 빈 루트 노드 위치에 맨 마지막 노드를 삽입한 후 아래로 내려가면서 적절한 자리를 찾아서 옮기는 방식으로 진행됩니다. Priori..