자바
-
💡 [이클립스] 워크스페이스 변경하는 방법 - eclipse workspace| 프로그래밍 분야/기타 2021. 7. 6. 13:49
이클립스(eplipse)는 오라클 사의 대표적인 자바 IDE로 오랫동안 널리 쓰여왔습니다. 이클립스에서 작업하는 모든 설정(setting)과 소스코드는 모두 작업 영역, 즉 워크스페이스에 저장되는데요. 원래는 이클립스 실행 시마다 워크스페이스를 어디로 지정할지 묻는 대화상자가 나오지만, don't ask again 콤보상자를 체크하셨다면 대화상자가 나오지 않게 됩니다. 하지만 워크스페이스를 분리하여 사용하여야 할 상황이 생기는데요. 워크스페이스를 변경하는 방법은 다음과 같습니다. File - Switch Workspace - Other... 클릭 대화 상자에서 원하는 디렉토리로 설정하시면 됩니다. Copy Settings 옵션을 통해, 현재 워크스페이스의 설정을 선택적으로 복사할 수 있습니다. Launc..
-
💡 [자바/코틀린] 제네릭? 타입 T? 자세히 알려주세요| 프로그래밍 분야/Kotlin 2021. 6. 28. 13:31
제네릭(generic)이란? 제네릭은 generalize, 즉 "일반화하다"에서 나온 개념입니다. 즉, 데이터의 타입을 일반화한다는 것을 의미합니다. 제네릭을 통해 클래스나 메서드에서 사용할 내부 데이터 타입을 컴파일 타임에 미리 지정하는 방법입니다. 이를 통한 장점은 크게 세 가지로 나뉩니다. 1. 객체의 타입 안정성 증가 2. 반환값에 대한 타입 변환 및 타입 검사 x 3. 모든 객체에 대한 확장성 기존의 방식 JDK 1.5 이전에서는 여러 타입을 사용하는 클래스나 메소드에서 인수나 반환값으로 최상위 객체인 Object 타입을 사용했습니다. 이 때 Object 객체를 다시 원하는 타입으로 변환해야 하며, 오류가 발생할 가능성도 존재합니다. 하지만 JDK 1.5부터 도입된 제네릭은 컴파일 시에 미리 타..
-
💡 [Kotlin] 예제를 통해 보는 기본 문법 - 변수, 상수(val, const val), 함수| 프로그래밍 분야/Kotlin 2021. 6. 22. 13:44
💡 예제 - Hello World 출력 class Tmp { companion object { const val GREETING:String = "World" } } fun main(){ val greeting:String greeting = "World" // greeting = "Meoru" // Tmp.GREETING = "Meoru" println("Hello " + greeting) println("Hello " + Tmp.GREETING) } [결과] Hello World Hello World 예제를 통해 알 수 있는 점 (vs Java) Java Kotlin main 함수 선언부 class 내부 최상위 레벨 (런타임) 상수 선언 final String greeting; val greeting..
-
코틀린(Kotlin)을 배워야 하는 이유 (취준생의 시점)| 칼럼 2021. 6. 21. 15:33
아래는 불과 4개월 전, 자바와 코틀린을 비교하며 썼던 글입니다. https://blog.naver.com/tkd1s/222264845424 취준생의 입장에서 본, 자바(Java) vs 코틀린(Kotlin) 결론부터 말하면 나는 자바를 사용하기로 했다. 안드로이드 개발자를 꿈꾸며 2개월정도 이 주제로 고민하고... blog.naver.com 이때는 2018년 구글이 오라클과의 2심에서 패소하고 Kotlin First를 선언한 직후 언어의 시장 지배력 추이를 살펴보았습니다. 여러가지 지표를 비교하며 결국 Java의 손을 들어주었는데요. 기본적인 입장은 여전히 동일합니다. 자바 vs 코틀린 뭐가 더 essential하냐고 묻는다면 당연히 자바의 손을 들겠습니다. 하지만 자바를 이미 어느정도 이해하고, 자바로..
-
[프로그래머스] 프린터 (Java)문제풀이/프로그래머스 2021. 3. 19. 15:43
문제 설명 일반적인 프린터는 인쇄 요청이 들어온 순서대로 인쇄합니다. 그렇기 때문에 중요한 문서가 나중에 인쇄될 수 있습니다. 이런 문제를 보완하기 위해 중요도가 높은 문서를 먼저 인쇄하는 프린터를 개발했습니다. 이 새롭게 개발한 프린터는 아래와 같은 방식으로 인쇄 작업을 수행합니다. 1. 인쇄 대기목록의 가장 앞에 있는 문서(J)를 대기목록에서 꺼냅니다. 2. 나머지 인쇄 대기목록에서 J보다 중요도가 높은 문서가 한 개라도 존재하면 J를 대기목록의 가장 마지막에 넣습니다. 3. 그렇지 않으면 J를 인쇄합니다. 예를 들어, 4개의 문서(A, B, C, D)가 순서대로 인쇄 대기목록에 있고 중요도가 2 1 3 2 라면 C D A B 순으로 인쇄하게 됩니다. 내가 인쇄를 요청한 문서가 몇 번째로 인쇄되는지 ..
-
[프로그래머스] 두 개 뽑아서 더하기 (Java)문제풀이/프로그래머스 2021. 3. 19. 15:37
문제 설명 정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers의 길이는 2 이상 100 이하입니다. numbers의 모든 수는 0 이상 100 이하입니다. 입출력 예 numbers result [2,1,3,4,1] [2,3,4,5,6,7] [5,0,2,7] [2,5,7,9,12] 입출력 예 설명 입출력 예 #1 2 = 1 + 1 입니다. (1이 numbers에 두 개 있습니다.) 3 = 2 + 1 입니다. 4 = 1 + 3 입니다. 5 = 1 + 4 = 2 + 3 입니다. 6 = 2 + 4 입니다. 7 = 3 + 4 입..
-
[프로그래머스] 크레인 인형 뽑기 (Java)문제풀이/프로그래머스 2021. 3. 19. 15:26
문제 설명 게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다. "죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데,..