안녕하세요.
2024. 09. 24. 화요일 TIL입니다.
데일리 루틴 알고리즘 코드카타
오늘은 "직사각형 별 찍기", "최대공약수와 최소공배수" 문제를 풀었습니다.
[내일배움캠프] 알고리즘 Daily Routine 38. 직사각형 별찍기
안녕하세요. 38회차 과제 "직사각형 별찍기"입니다.문제 설명이 문제에는 표준 입력으로 두 개의 정수 n과 m이 주어집니다.별(*) 문자를 이용해 가로의 길이가 n, 세로의 길이가 m인 직사각형 형태
tip-blog-welcome.tistory.com
[내일배움캠프] 알고리즘 Daily Routine 39. 최대공약수와 최대공배수
안녕하세요. 39회차 과제 "최대공약수와 최대공배수"입니다.문제 설명두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환하는 함수, solution을 완성해 보세요.배열의 맨 앞에 최대공약수,
tip-blog-welcome.tistory.com
오늘 배운 것
# 타입 더 유연하게 다루기
## Generic 알아보기
-. 제네릭의 효용
* 타입 언어에서 "중복되거나 필요 없는 코드를 줄여주는 것"
* 그러면서도 타입 안정성을 해치지 않는 것
* 제네릭 문법
// 1. 제네릭은 클래스 또는 메서드에 사용 가능
// <> 안에 들어가야 할 타입을 명시
public class Generic<T> {
// 2. 내부 필드에 String
private T t;
// 3. 메서드의 Return type도 String
public T get() {
return this.t;
}
public void set(T t) {
this.t = t;
}
public static void main(String[] args) {
// 4.
Generic<String> stringGeneric = new Generic<>();
// 5.
stringGeneric.set("Hello World");
String tValueTurnOutWithString = stringGeneric.get();
System.out.println(tValueTurnOutWithString);
}
}
## Generic 문법 자세히 살펴보기
-. 제네릭의 제한
* 객체의 static 멤버에 사용할 수 없습니다.
* 제네릭 배열을 생성할 수 없습니다.
-. 제네릭의 문법
* 다수의 타입 변수를 사용할 수 있습니다.
public class Generic<T, U, E> {
public E multiTypeMethod(T t, U u) { ... }
}
Generic<Long, Integer, String> instance = new Generic();
instance.multiTypeMethod(longVal, intVal);
* 다형성 즉 상속과 타입의 관계는 그대로 적용됩니다.
* 와일드카드를 통해 제네릭의 제한을 구체적으로 정할 수 있습니다.
* 메서드를 스코프로 제네릭을 별도로 선언할 수 있습니다.
내일도 오늘보다는 조금 더 나은 내가 되도록 노력하겠습니다.
'내일배움캠프 > 내일배움캠프' 카테고리의 다른 글
[내일배움캠프] 2024. 09. 26. TIL (0) | 2024.09.26 |
---|---|
[내일배움캠프] 2024. 09. 25. TIL (1) | 2024.09.25 |
[내일배움캠프] 2024. 09. 23. TIL (0) | 2024.09.23 |
[내일배움캠프] 2024. 09. 20. 트러블슈팅 TIL (0) | 2024.09.20 |
[내일배움캠프] 2024. 09. 19. TIL (0) | 2024.09.19 |
댓글