본문 바로가기
반응형

IT27

java 기본 문법 - 제네릭 메소드. 제네릭 메소드란?? 지난 글에서 제네릭이 무엇인지 읽어보셨을까요?? (https://forfire700.tistory.com/118) 그렇거나 이미 알고 계시다면 이해가 빠르실 듯 합니다. 타입 파라미터를 가지고 있는 메소드라고 생각하면 됩니다. 기본형은 다음과 같아요! 잘 참고해주세요. 접근제한자(+static or non static) 리턴타입 메소드명 (매개변수){.......}; ex) public static Generic genericExample (String s) { Generic generic = new Generic(); String str = s; return generic; 그리고 제네릭 타입을 반환하기 위해서, 제네릭 타입의 객체를 생성하고 그 참조변수를 반환했어요! 객체를 생성하.. 2023. 10. 7.
java 기본 문법 - 제네릭의 정의 및 제네릭 타입. 제네릭에 대해서 다시 복습하면서 정리해보고자 글을 써봤습니다. 아직은 블로그를 어떻게 운영해야 될지 잘 몰라서, 난잡하지만 조금씩 깔끔하게 만들어보고자 하는데 이번 시도가 도움이 되었으면 바라며, 글을 시작하도록 하겠습니다. 제네릭이란?? 멤버(필드, 메소드)와 같은 데이터들의 타입을, 타입파라미터를 이용하여 사용하는 순간(객체를 생성하거나 변수를 선언하거나 하는 등등)에 타입을 지정해주는 문법입니다. 이 타입 파라미터의 의미는, "타입이 아직 정해져 있지 않으니 사용할 때 원하는 타입으로 바꿔쓰세요~~" 정도록 이해하면 됩니다. 내부에는 그냥 아무 알파벳이 와도 상관없으며, 본인이나 다른 이들이 이해하기 편한, 상징성을 띄는 글자로 해주면 좋습니다. 예를들어 타입이니까 T, 모델이니까 M 이런 식으로 .. 2023. 10. 4.
(10.02 수정)제네릭이란? (수정)공부하면서, 잘못쓰여진 부분은 다시 수정하였습니다. 그동안 제네릭에 대한 말은 많이 들어도 정확히는 모르고, 그렇다고 놔두자니 반드시 알아야되기도 하는데다 자주 활용되는 내용이기에 다시 개념정리를 해봤습니다ㅎㅎ 제네릭이란 책에 나온 개념 대로라면... 결정되지 않은 타입을 파라미터로 처리하고 실제 사용할 때 파라미터를 구체적인 타입으로 대체시키는 기능이라 합니다. 이것이 무엇인지 예제로 한번 볼게요 여기에서 는 타입파라미터를 뜻합니다. 그 역할은 타입이 필요한 자리에 T를 사용할 수 있다는 것을 알립니다.(지금의 경우는 변수 선언할 때) 그렇게 되면 무엇이 좋냐??? test 클래스를 이용해 객체(인스턴스)를 생성하고, 그때 인스턴스 필드 content는 타입이 변할 수가 있습니다. 다시말해서 객.. 2023. 6. 28.
programmers 코딩테스트 lv 0 두 수의 나눗셈 1.이번 문제에서 계속해서 Double에서 int로 형변환이 안된다. 성질이 안맞는다는 error가 뜨길래 왜 그런가 했더니 Double은 wrapper 객체였기 때문이었습니다.(기본 자료형을 객체로 포장한 것) 그래서 다시 확인해보니 double로 바꿔주기만 하면 되는 문제였었습니다;; 다른 분들의 풀이와 섞어서 더 나은 해결책을 생각해봤습니다. class Solution { public int solution(int num1, int num2) { double solution = ((double)num1 / num2)*1000; return (int)solution; } } 2022. 12. 10.
programmers 코딩테스트 lv 0 각도기 이번 문제는 처음에는 if 문과 switch-case 문으로 문제를 접근하면 좋겠다싶었는데, 풀고나서 다른 분의 풀이를 보니 삼항 연산자로도 간단히 해결되더군요... 진짜 1줄의 코드를 보는데... 와 이것이 클린 코드라는 것을 느낄 수 있었습니다. 우선 아래는 저의 풀이이며, 응용은 맨 아래에 첨부하겠습니다. 이것이 다른 분으 풀이인데, 삼항연산자를 활용할 것을 저는 생각지도 못했네요 ㅎㅎㅎ.. 반성해야겠습니다. class Solution { public int solution(int angle){ return angle == 180 ? 4 : angle > 90 ? 3 : angle == 90 ? 2 : angle < 90 ? 1 : 0; 2022. 12. 9.
programmers 코딩테스트 lv 0 숫자 비교 숫자 비교를 위한 메소드를 찾아보다가, compareTo를 활용해보는 것은 어떨가 해서 @Override를 통해 재구현 해서 문제를 풀어보다 실패하였습니다.... 생각해보니 lv0 문제에서 그런 문제를 낼 것 같지 않아 다시 생각해보니 의외로 간단한 풀이법이 생각나서 적용해봤습니다. 그리고 맨 아래에는 삼항연산자를 이용한 풀이법도 추가시켜놨습니다. 위에 사진 두 장이 저의 풀이지만, 이것보다 더 간단한 풀이가 있어 코드 블럭으로 남겨보겠습니다. class Solution{ public int solution(int num1, int num2){ int answer = (num1 == num2) ? 1 : -1; return answer; } } 마지막으로 삼항 연산자를 다시 응용해서 풀어봤습니다. cla.. 2022. 12. 7.
programmers 코딩테스트 lv 0 두 수의 몫 구하기 아직까지는 문제가 쉬운 것 같기는 한데, 어떻게 해야 더 효율적이고 참신할지는 고민해봐야겠습니다 2022. 12. 7.
programmers 코딩테스트 lv 0 두 수의 차 두 수의 곱처럼 하는 방식도 있겠지만 이번에는 다른 방식을 활용해봤습니다. ps: 실수 했네요... if문 조건으 각각 5000과 -5000으로 수정해야합니다! 2022. 12. 3.
programmers 코딩테스트 lv 0 두 수의 곱 기본이 부족한 것 같아서 코딩테스트 문제를 천천히 시작해볼까 합니다 ㅎㅎ lv 0도 버벅거리기는 하지만 한 발씩 내딛다 보면 많이 발전해있겠죠 ㅋㅋㅋㅋ 2022. 12. 3.
POWER JAVA 10장 예제 11-8 comboBox 사용법 comboBox 사용방식인데, 한번 쳐봤음에도 낯설어서 올려봅니다! 참고로 D드라이브에 이미지 파일 3개 준비하셔야 합니다(강아지,고양이,새 또는 본인이 원하는 사진들) HTML 삽입 미리보기할 수 없는 소스 2022. 11. 9.
POWER JAVA 10장 예제 11-3 사용자로부터 받은 정수의 제곱 계산(GUI) label과 textField의 간단한 활용 예제입니다. HTML 삽입 미리보기할 수 없는 소스 2022. 11. 9.
POWER JAVA 10장 예제 11-1 label 및 font 변경 레이블의 색상과 폰트 변경, 그리고 이미지 추가하는 방법을 담은 간단한 예제입니다. HTML 삽입 미리보기할 수 없는 소스 2022. 11. 9.
반응형