전체 글429 [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. ShopBack을 이용해 구매할 때 더 많은 혜택 받기! 서론 저는 기존에 물건을 살때 별 생각없이 샀었습니다. 그렇지만 지인을 통해 해당 사이트를 알게되고 공유를 해야겠다는 생각에 글을 작성하게 됐습니다. ShopBack이란? ShopBack은 쇼핑을 하고도 돈을 돌려받을 수 있는 캐시백 서비스입니다. 온라인 쇼핑몰에서 구매를 할 때마다, 구매 금액의 일정 비율이 적립되어 나중에 현금으로 환급받을 수 있습니다. 이는 장기적으로 보았을 때 상당한 절약을 가능하게 합니다. ShopBack 이용 방법 가입: ShopBack 웹사이트에서 간단한 가입 절차를 거칩니다. 쇼핑 시작: ShopBack을 통해 원하는 쇼핑몰로 이동합니다. 적립 혜택: 구매 후 적립된 금액을 확인하고, 이를 현금으로 환급받으면 됩니다. 추가 혜택: 추천인 활용하기! 제 추천인이 포함된 링크를.. 기타 2024. 3. 24. 2023 회고록 벌써 3월 끝이 다 지나가고 있지만 늦게나마 회고록을 작성한다. 귀찮으니 대충 생각나는 데로 정리한다. 상반기 2022년 하반기때 구했던 자취방에서 자취를 계속해서 하고있었지만 회사에서 주 1회 출근 4일 재택으로 확정이 되면서 세입자를 구해 넘기고 본가로 내려갔다. 이때부터 출근날에는 새벽에 일어나서 첫 기차를 타고 출근을 했다. 본가로 돌아가고 바로 집 근처 헬스장을 결제해서 운동을 다니기 시작했다. 그러면서 자취할때 보다 돈이 더 모이기 시작했는데 그 돈으로 사고싶었던 로봇청소기를 샀다. 로보락 S8 PRO ULTRA를 구매했는데 사고나니까 사람들이 왜 로봇청소기를 사는지 이해했다. 물걸레 청소까지 해주니 손으로 하는 청소빈도가 많이 줄어들었다. 여유가 있다면 하나 장만하는걸 추천한다. 일로는 내부.. 기타 2024. 3. 24. 손목 터널 증후군 환자를 위한 키보드 리뷰(로지텍 K860) 손목 터널 증후군과 인체공학적 키보드의 필요성 장시간의 컴퓨터 작업과 타이핑으로 인한 손목 터널 증후군은 많은 사람들이 겪는 문제입니다. 이로 인해 손목과 팔의 통증, 감각 이상 등이 발생할 수 있으며, 예방과 적절한 대처가 필요합니다. 인체공학적 키보드는 이러한 문제를 예방하고 개선하는 데에 큰 도움이 되는데, 편안한 타이핑 자세를 유지하면서 손목 건강을 보호해줍니다. 저의 경우 개발자를 준비하면서 여러 해 동안 장시간의 컴퓨터 작업과 타이핑으로 인해 손목 터널 증후군이 점점 심해져서 손목 사용이 불편했습니다. 심할때는 손목통증으로 인해 잠에서 깨어날 정도였습니다. 손목과 팔의 통증과 감각 이상으로 인해 개발 작업에도 영향을 받게 되었습니다. 인터넷 검색과 유튜브를 통해서 인체공학적 키보드를 알게 되었.. 제품리뷰 2023. 7. 30. 2022 회고록 2022 회고 벌써 2022년이 끝났다. 취직을 하고 벌써 1년이 넘어가고 만으로 1년이 넘었다.(햇수로는 3년차?) 1년동안 무엇을 했는지 벌써 기억이 잘 나지않는것 같아 더 미루지 못하고 기억을 더듬으며 회고록을 작성한다. 상반기 1~2월 까지는 열심히 신입교육을 받았다. 회사에서 Java와 Spring에 대해서 교육을 해줬으나 우아한 테크코스에서 배운것들을 복습하는 느낌이어서 편하게 보냈다. 신입 교육이 끝나고 회사에서 사용하는 봇을 만들었다. 다른팀이나 외부에서 도와달라는 요청이 들어올때 도와주는 주번이란 시스템이 있는데 다른팀에서는 주번이 누군지 알기가 어렵다. 그래서 요청이 들어오면 해당 주번이 누구인지 알려주고 카카오톡으로 호출을 하는 봇을 만들게 되었다. 그 다음은 GoCD로 배포되고 있는.. 기타 2023. 1. 6. 이전 1 2 3 4 ··· 36 다음 💲 광고입니다.