본문 바로가기

전체 글

(113)
김영한의 실전 자바 중급 1편 (1) java.lang 패키지자바가 기본으로 제공하는 라이브러리중에 가장 기본이 되는 것이 바로 java.lang 패키지이다. java.lang 패키지의 대표적인 클래스들Object : 모든 자바 객체의 부모 클래스String : 문자열Integer, Long, Double : 래퍼 타입, 기본형 데이터 타입을 객체로 만든 것Class : 클래스 메타 정보System : 시스템과 관련된 기본 기능들을 제공java.lang 패키지는 모든 자바 애플리케이션에 자동으로 import 된다. Object 클래스 자바에서 모든 클래스의 최상위 부모 클래스는 항상 Object 클래스이다. package lang.object;public class Parent { public void parentMethod() { ..
Lv1 정수 내림차순으로 배치하기 문제요약n의 각 자릿수를 큰것부터 작은 순으로 정렬한 새로운 정수를 리턴해라n이 118372면 873211을 리턴 입출력nreturn118372873211 문제풀이 버블 정렬을 이용한 풀이import java.util.*;class Solution { public long solution(long n) { long answer = 0; String str = String.valueOf(n); Long[] arr = new Long[str.length()]; for(int i=0; i reverse 메서드를 이용한 풀이import java.util.*;class Solution { public long solutio..
Lv0 정수를 나선형으로 배치하기 문제요약양의 정수 n이 매개변수로 주어진다. n * n 배열에 1부터 n제곱 까지 정수를 인덱스 [0][0] 부터 시계방향 나선형으로 배치한 이차원 배열을 return 하는 함수를 작성해라. 입출력행 \ 열0123012341121314521116156310987 문제풀이class Solution { public int[][] solution(int n) { int[][] answer = new int[n][n]; int idx = 1; int rowStart = 0; int rowEnd = n-1; int colStart = 0; int colEnd = n-1; while(idx = colStar..
Lv 0 주사위 게임 1 문제요약1부터 6까지 숫자가 적힌 주사위 두 개가 있다.주사위를 굴린 숫자를 각각 a,b 라고 할 때a 와 b가 모두 홀수라면 a제곱 + b제곱 a 와 b중 하나만 홀수라면 2 * ( a + b)a와 b가 모두 홀수가 아니라면 | a - b | 결과를 구하라 입출력abresult35346114242 문제풀이import java.util.*;class Solution { public int solution(int a, int b) { int answer = 0; if(a % 2 == 1 && b % 2 == 1){ answer = a * a + b * b ; }else if((a % 2 == 0 && b % 2 == 1) || ..
Lv0 뒤에서 5등까지 제 요약정수로 이루어진 리스트 num_list가 주어진다. num_list에서 가장 작은 5개의 수를 오름차순으로 담은 리스트를 return하도록 solution 함수를 완성해라. 입출력 예[12,4,15,46,38,1,14][1,4,12,14,15] 문제풀이import java.util.*;class Solution { public int[] solution(int[] num_list) { int[] answer = {}; Arrays.sort(num_list); answer = Arrays.copyOfRange(num_list,0,5); return answer; }} Arrays.copyOfRa..
Lv0 무작위로 K개의 수 뽑기 문제 요약랜덤으로 서로 다른 k개의 수를 저장한 배열을 만드려고 한다.지금까지 나온적이 없는 수이면 배열 맨 뒤에 추가하는 방식으로 만든다.정수 배열 arr가 주어진다. 무작위의 수는 arr에 저장된 순서대로 주어질 예정완성된 배열의 길이가 k보다 작으면 나머지 값을 전부 -1로 채워서 return 한다. 입출력 예arrkresult[0,1,1,2,2,3]3[0,1,2][0,1,1,1,1]4[0,1,-1,-1] 문제풀이import java.util.*;class Solution { public int[] solution(int[] arr, int k) { int[] answer = new int[k]; int[] uniqueArr = Arrays.stream(..
문자열 뒤집기 - StringBuilder.reverse() StringBuilder : 내부에 버퍼를 가지고있어 변경 가능한 문자열을 만들때 사용한다.StringBuilder.reverse 메서드를 사용하여 문자열을 뒤집을 수 있다. public class test { public static void main(String[] args) { StringBuilder str = new StringBuilder(); str = new StringBuilder("hello"); str.reverse(); System.out.println(str); }} 출력결과
김영한의 실전 자바 기본편 - 8일차 다형성1객체지향 프로그래밍의 대표적인 특징으로는 캡슐화, 상속, 다형성이 있다. 다형성은 이름 그대로 다양한 형태, 여러형태를 뜻한다.한 객체가 여러 타입의 객체로 취급될 수 있는 능력을 뜻한다. 다형적 참조 public class Parent { public void parentMethod(){ System.out.println("Parent.parentMethod"); }} public class Child extends Parent{ public void childMethod(){ System.out.println("Child.childMethod"); }} public class PolyMain { public static void main(S..