Java O-O8 제네릭 인터페이스 제네릭 인터페이스는 특정 타입을 미리 지정하지 않고, 사용할 때마다 다른 타입을 지정할 수 있는 인터페이스입니다. Java의 제네릭(Generic)은 데이터 타입을 일반화하여 코드의 재사용성과 타입 안전성을 높이기 위한 기능입니다. 정의public interface MyGenericInterface { void doSomething(T item);}사용public class StringHandler implements MyGenericInterface { @Override public void doSomething(String item) { System.out.println("Processing string: " + item); }}public class Integer.. 2024. 6. 29. Optional Optional은 Java 8에서 소개된 유틸리티 클래스이며, 값이 존재할 수도 있고 존재하지 않을 수도 있는 상황을 명확하게 표현하기 위해 사용됩니다. Optional은 null을 사용하지 않고도 값의 유무를 안전하게 처리할 수 있도록 도와줍니다.이를 통해 NullPointerException을 방지하고, 명시적이고 안전한 방식으로 null 상태를 관리할 수 있습니다. Optional 생성 및 사용 값이 있을 때: Optional.of(T value)Optional이 null이 아닌 값을 감싸도록 만듭니다.값이 있을 수도 없을 수도 있을 때: Optional.ofNullable(T value)값이 null일 수도 있습니다. null이면 빈 Optional을 반환합니다.빈 Optional: Option.. 2024. 6. 28. [JAVA] 실수 계산 , 소수점 n번째 자리까지 반올림 하기 / 엡실론 사용 알고리즘 문제를 풀다 소숫점 7번째자리까지 반올림 해야 하는 상황이 왔다 실수 계산의 반올림은 어떻게 하더라? 그리고 엡실론을 예전에 썼던 거 같은데.. 하다가 정리 했다 1. 소수점 n번째자리 까지 반올림 하기 Math.round() 함수 사용하기 double pie = 3.14159265359 ; System.out.println(Math.round(pie)) ; // 출력: 3 //소숫점 3째자리까지 반올림 System.out.println(Math.round(pie * 1000) / 1000.0) ; //출력: 3.142 직접 숫자를 곱해주고 나눠주는게 실화인가 싶었지만 실화였다 String.format() 함수 사용하기 double pie = 3.14159265359 ; //소숫점 3째자리까지 .. 2021. 12. 21. [JAVA] array 배열의 깊은 복사, 얕은 복사 배열은 parameter로 넘겨 줄 때 갑자기 헷갈린 게 있다 배열은 primitive type 일까? object일까? 정답은 배열은 object이다 배열의 이름은 주솟값의 별명이라고 학부 수업 때 교수님이 해주신 말씀이 생각난다 배열을 가져와 바꾸는 것은 그 배열의 주솟값에 가서 바꾸는 것과 같다 이게 바로 얕은 복사다 더 자세히 살펴보자 1. 배열의 얕은 복사 int a[] = {1,2,3,4} ; int b[] = a ; a,b 모두 같은 주솟값을 가리키게 된다 여기서 '=' 연산자 옆에 있는 a가 주솟값이라고 생각하면 된다 객체의 인스턴스 변수 배열을 가져와 바꿀 때나 함수 인자로 전달 받아 배열을 바꿀 때 매번 불러오기 귀찮으니 이렇게 사용하면 된다 2. 깊은 복사 배열 내 원소를 다 복사 해.. 2021. 12. 20. 이전 1 2 다음