java36 [Java] 큰 소수를 다루기 위한 BigDecimal 개념 및 사용방법 BigDecimal 소개 자바의 BigDecimal 클래스는 부동 소수점 연산에 있어 높은 정확도를 제공한다. 이 클래스는 금융 계산, 과학 계산 등에서 정확한 숫자 처리가 필수적일 때 사용된다. BigDecimal의 주요 메서드 BigDecimal은 add(), subtract(), multiply(), divide() 등의 사칙연산 메서드를 포함한다. 코드는 실제로 돌려보면서 무슨 차이인지 확인해보면 좋다. 사칙연산 예제 import java.math.BigDecimal; public class Main { public static void main(String[] args) { BigDecimal num1 = new BigDecimal("10.75"); BigDecimal num2 = new Big.. 프로그래밍언어/Java 2024. 4. 8. [Java] 큰 숫자를 다루기 위한 BigInteger 개념 및 사용 방법 BigInteger 소개 자바의 BigInteger 클래스는 제한 없이 큰 정수를 다룰 수 있는 기능을 제공한다. 이 클래스는 일반적인 정수 자료형으로는 처리할 수 없는 매우 큰 수를 다룰 때 사용되며, java.math 패키지에 속해 있다. BigInteger는 암호화, 금융 계산, 수학적 연산 등 다양한 분야에서 유용하게 사용된다. BigInteger의 주요 메서드 BigInteger는 불변 객체로, 각종 수학적 연산 후 새로운 BigInteger 인스턴스를 반환한다. 주요 메서드로는 add(), subtract(), multiply(), divide(), mod() 등이 있다. 이 클래스는 문자열이나 byte 배열로부터 BigInteger 객체를 생성할 수 있는 생성자도 제공한다. 사칙연산 예제 i.. 프로그래밍언어/Java 2024. 4. 4. [Java] 기본 변수 타입과 변수의 크기와 특징 자바는 객체 지향 프로그래밍 언어로, 다양한 유형의 데이터를 효율적으로 처리할 수 있는 기본 변수들을 제공한다. 프로그래밍에서 변수는 데이터를 저장하는 메모리의 공간으로, 적절한 활용은 프로그램의 효율성과 가독성을 높일 수 있다. 자바의 기본 변수 유형은 각각 고유의 크기와 특성을 갖고 있으며, 이는 메모리 관리와 처리 속도에 중요한 역할을 한다. 변수의 크기와 비트로 표현하는 방식 자바에서 각 변수 유형은 고유한 크기와 메모리 할당을 갖는다. 예를 들어, byte는 8비트, int는 32비트를 사용한다. 이러한 비트의 크기는 변수가 저장할 수 있는 값의 범위를 결정한다. 자바의 기본 변수 종류, 범위 및 사용 예시 정수형 byte 범위: -128 ~ 127 크기: 8 비트 예시: byte age = 3.. 프로그래밍언어/Java 2024. 4. 3. [Java] 사용자 입력 및 출력 처리하기 사용자 입력 받기 Scanner Scanner 클래스는 Java의 java.util 패키지에 포함되어 있으며, 사용자로부터의 다양한 형태의 입력을 처리하는 데 사용된다. 이 클래스는 문자열, 정수, 실수, 불리언 등 다양한 타입의 입력을 쉽게 읽을 수 있다. 기본 사용 예제 import java.util.Scanner; public class InputExample { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.print("이름을 입력하세요: "); String name = scanner.nextLine(); System.out.println("안녕하세요, " + name + "님.. 프로그래밍언어/Java 2024. 4. 2. [Java] 최솟값, 최댓값 찾기 서론 Java에서 데이터를 효율적으로 처리하고 분석하는 데는 배열과 리스트가 중요한 역할을 합니다. 본 글에서는 for 문, Math 메서드, 그리고 if문을 활용하여 Java에서 배열과 리스트의 최솟값 및 최댓값을 찾는 다양한 방법을 탐구해보겠습니다. 기본적인 배열과 리스트의 활용 Java에서 배열은 동일한 데이터 타입의 요소들을 순차적으로 저장하는 구조이며, 리스트는 가변적인 크기를 갖는 데이터 컬렉션입니다. 이 두 구조 모두 인덱스를 통해 개별 요소에 접근할 수 있으며, 데이터를 저장하고 처리하는 데 널리 사용됩니다. 최솟값과 최댓값 찾기 Math 메서드 활용 예제 int[] numbers = {4, 3, 7, 1, 8}; int min = numbers[0]; int max = numbers[0].. 프로그래밍언어/Java 2024. 4. 1. [Java] 문자열 치환하는 방법(replace, replaceAll, replaceFirst) Java의 문자열 처리 개념 문자열은 문자의 연속된 시퀀스로, Java에서는 String 클래스를 통해 문자열을 표현합니다. 문자열 처리는 데이터 분석, 사용자 입력 처리, 파일 읽기/쓰기 등 다양한 분야에서 중요한 역할을 합니다. 문자열 찾기 및 변경 방법 Java에서 문자열을 찾고 변경하는 데는 여러 메서드가 있습니다: replace(): 문자열에서 특정 문자 또는 문자열을 다른 문자 또는 문자열로 변경합니다. replaceAll(): 정규 표현식을 사용하거나 특정 문자열을 다른 문자열로 변경합니다. replaceFirst(): 정규 표현식을 사용하여 문자열에서 첫 번째로 발견되는 패턴에 해당하는 부분을 변경합니다. 실제 예제 replace() 예제 String original = "Hello, Wo.. 프로그래밍언어/Java 2024. 3. 31. [Java] LocalTime, LocalDate, LocalDateTime을 이용한 시간 관리하기 오늘은 Java를 이용해 시간을 다루는 방법에 대해서 알아보겠습니다. 자바 8의 이전의 java.util.Date 및 java.util.Calendar 클래스들은 여러 가지 문제점을 가지고 있었습니다: 불변성 부족: Date 클래스의 인스턴스는 변경 가능했습니다. 이로 인해 날짜 객체가 예기치 않게 변경될 위험이 있었습니다. 스레드 안전하지 않음: 여러 스레드에서 동시에 Date 객체를 수정할 때 동기화 문제가 발생할 수 있었습니다. 표준화된 시간대 처리 부재: Date는 시간대를 고려하지 않아 국제화된 애플리케이션에서는 문제가 발생하기 쉬웠습니다. 복잡한 API: Calendar 클래스는 사용하기 복잡했으며, 직관적이지 않은 메서드를 많이 포함하고 있었습니다. 자바 8에서는 이러한 문제들을 해결하기 위.. 프로그래밍언어/Java 2024. 3. 30. [Java] 실행시간 측정하기 메서드 시간 측정의 중요성 오늘은 자바 프로그래밍에서 메서드가 얼마나 빨리 실행되는지 측정하는 방법에 대해 알아본다. 프로그래밍을 할 때, 우리가 작성한 코드가 얼마나 효율적인지 알기 위해서는 실행 시간을 측정하는 것이 중요하다. 이를 통해 프로그램의 성능을 개선할 수 있다. 그럼 자바에서 시간을 측정하는 기본적인 방법에 알아보자 자바의 시간 측정 기본 개념 자바에서 시간을 측정하는 데는 주로 두 가지 메서드를 사용한다. System.currentTimeMillis(): 현재 시간을 밀리초(1/1000초) 단위로 반환. 날짜와 시간을 측정 System.nanoTime(): 더 정밀한 나노초(1/1,000,000,000초) 단위로 현재 시간을 반환. 짧은 시간을 측정할 때 유용 실제 예제를 통한 시간 측정.. 프로그래밍언어/Java 2024. 3. 25. [Java] try-catch-final 보다 try-with-resources를 이용하자 try - catch - finally public void insert(User user) { final String sql = "insert into users (account, password, email) values (?, ?, ?)"; Connection conn = null; PreparedStatement pstmt = null; try { conn = dataSource.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, user.getAccount()); pstmt.setString(2, user.getPassword()); pstmt.setString(3, user.getEmail()); pstmt.execu.. 프로그래밍언어/Java 2022. 3. 25. 자바(Java) String 문자열 비교하기 자바에서 문자열을 비교하려면 기본형 타입(primitive type)인 int나 long, char와 다른방식으로 비교를 해야한다. 이번 포스팅에서는 왜 그런지와 equals 메서드에 대해서 알아보자. == == 의 비교방법은 주소를 이용한 비교이다. 기본형 타입의 경우 값이 같으면 비교가 되고 객체의 경우는 같은 객체일 경우에만 true가 나오게 된다. @Test @DisplayName("String은 비교할때 == 로 비교하면 안된다.") void equals1() { //given String a = "멍토블로그"; String b = new String("멍토블로그"); //when boolean value = a == b; //then assertThat(value).isFalse(); } 일반.. 프로그래밍언어/Java 2022. 2. 10. 자바(Java) 문자열(String) 대문사, 소문자 변환하기 가끔 문자열을 대문자로 바꾸거나 소문자로 바꿔야 하는 일이 생긴다. 이럴 때 String 클래스의 내장 기능을 사용하면 편하게 바꿀 수 있다. 아스키코드로 바꿀 수도 있지만 이미 만들어진 기능을 쓰는 게 더 좋지 않은가? 이번 포스팅에서는 대문자를 소문자로 바꾸거나 소문자를 대문자로 바꾸는 방법에 대해서 알아보자. 대문자로 바꾸기 자바의 공식문서를 보면 toUpperCase라는 메서드가 있으며 해당 메서드가 대문자로 바꿔주는 메서드이다. 알파벳이 아닌 문자는 영향을 받지 않는다. 정확히는 String의 경우 불변 객체이기 때문에 해당 객체가 바뀌는 것이 아니라 대문자로 이루어진 객체를 반환해준다. @Test @DisplayName("소문자를 대문자로 변환한다.") void upper() { // give.. 프로그래밍언어/Java 2022. 2. 9. 자바(Java) 문자열 자르기(split, subString) 사용법 프로그래밍을 하다 보면 특정 문자나 패턴을 기준으로 문자열을 자르고 싶을 때가 있다. 이럴 때 Java에 있는 String 클래스에 내장된 기능을 사용하면 가능하다. 이번 포스팅에서는 String의 기능인 split과 subString에 대해서 알아보자. Split split 메서드는 String 배열을 반환하는 메서드이다. 특정한 문자나 패턴을 기준으로 문자를 자르고 싶을 때 사용한다. 사용 방법은 아래와 같다. "안녕하세요,반갑습니다,수고하셨습니다,감사합니다" 라는 문자가 있고 나는 “,” 를 기준으로 문자열을 나누고 싶다고 하면 아래와 같은 형식으로 나눌 수 있다. @Test @DisplayName("문자열을 특정 기준으로 잘라 배열로 만든다.") void splitTest1() { // given.. 프로그래밍언어/Java 2022. 2. 9. 이전 1 2 3 다음 💲 광고입니다.