본문 바로가기

장생농

(140)
자바/JAVA 예외 처리 예외 클래스 정리 : jang-sn.tistory.com/17 예외 처리: 프로그램 실행 중 예외가 발생할 때, 갑자스러운 종료를 막고, 정상 실행 상태를 유직하도록 처리하는 것. 또한 로그를 남기게 할 수 있다. 자바 컴파일러는 일반 예외가 발견되면 예외 처리 코드를 강제로 요구한다. 실행 예외는 개발자가 경험적으로 코드를 작성한다. try-catch-finally 블록: 생성자 또는 메소드 내부에서 작성되는 예외 처리 코드다. finally 는 작성하지 않아도 된다. finally 블록은 예외가 잡힙더라도 실행되기 때문에 catch 문에 return 문이 있다고 해도, fianlly 블록이 실행된 후에 return 문이 실행된다. try{ 명령 코드; } catch(예외클래스1 e){ //try코드 ..
배열의 문자열화, ArrayList 섞기 배열을 문자열로 바꾸기 import java.util.Arrays; int[] arr = { 1, 2, 3, 4 }; String result = Arrays.toString(arr); // "[1, 2, 3, 4]" ArrayList의 원소 순서 섞기 import java.util.Collections; ArrayList list = new ArrayList(); list.add(1); list.add(2); list.add(3); list.add(4); Collections.shuffle(list);
자바/JAVA ArrayList 배열은 동일한 자료형의 순차적 자료 구조이다. 배열은 연속된 자료구조이다. ArrayList: List 인터페이스를 상속받은 클래스로 크기가 가변적으로 변하는 선형리스트. 파이썬의 리스트와 비슷하다. 선언 방법 import java.util.ArrayList public class ArrayListExam{ ArrayList list = new ArrayList(); //타입 없이 선언된다. ArrayList str = new ArrayList(); // String 타입의 객체를 담는 ArrayList ArrayList num = new ArrayList(); // integer 타입의 객체를 담는 ArrayList ArrayList num2 = new ArrayList(); // new에서 타입 생략..
자바/JAVA 예외 클래스 하드웨어 관련 고장으로 생기는 오류는 ERROR. 프로그램 자체에서 사용자 또는 개발자의 잘못으로 오류가 생기면 Exception(예외). 예외가 발생하면 프로그램은 종료 되지만, 예외 처리를 통해 실행 상태를 유지하는 것이 가능하다. 자바는 예외를 클래스로 관리한다. 프로그램 실행 중 예외가 발생하면 해당 예외 클래스로 객체를 생성하고 예외 처리 코드에서 예외 객체를 이용할 수 있도록 해준다. 모든 예외 클래스의 최상위 클래스는 java.lang.Exception 클래스. 1. 일반 예외(Exception) - 컴파일러가 미리 체크하는 예외. -> 컴파일 전 개발자에게 알려줌. 2. 실행 예외(Runtime Exception) - 예측할 수 없는 예외이기 때문에 컴파일러가 체크하지 않는다. 그래서 컴파..
자바/JAVA 익명 객체 익명 객체(Anonymous): 이름이 없는 객체. 어떤 클래스를 상속하거나, 인터페이스를 구현할 때 사용할 수 있다. 부모 클래스를 상속받는 익명 객체를 익명 자식 객체, 인터페이스를 구현하는 객체를 익명 구현 객체라고 한다. 익명 자식 객체: 자식 클래스가 재사용되지 않고 오로지 특정 위치에서 사용되는 경우 편리하다. 익명 구현 객체: 구현 객체 클래스가 재사용되지 않고 오로지 특정 위치에서 사용되는 경우 편리하다. parentclass p = new parentclass(){...}; // 익명 자식 객체를 작성하는 법 interfaceA a = new interfaceA(){}; // 익명 구현 객체를 작성하는 법 코드를 살펴보면, parentclass()을 상속하는 클래스를 대괄호({... })..
코드업 2001 그리디 문제 최소 대금 언어: 파이썬 링크: codeup.kr/problem.php?id=2001 최소 대금 입력은 5 행으로 이루어지며, 한 줄에 하나씩 양의 정수가 적혀있다. 1행의 정수는 첫 번째 파스타 가격이다. 2행의 정수는 두 번째 파스타 가격이다. 3행의 정수는 세 번째 파스타 가격이다. 4행 codeup.kr 문제: 입력은 5행으로 한줄에 하나씩 양의 정수가 들어온다. 1,2,3번재 숫자는 파스타의 가격, 4,5번째 숫자는 주스의 가격이다. 파스타와 주스 중 하나씩 골라 조합을 만드는데 그 중, 제일 저렴한 조합을 찾고 10% 더한 금액을 찾아 출력한다. 풀이: 들어오는 입력을 파스타 리스트와 주스 리스트로 나눈다.(또는 한 리스트에 담아도 된다.) 최소 금액 변수를 만들고 파스타 리스트와 주스 리스트의 각각 첫..
자바/JAVA 중첩 클래스, 중첩 인터페이스 중첩 클래스와 중첩 인터페이스(Nested class, Nested interface): 클래스 내에 클래스와 인터페이스를 선언할 수 있다. 중첩 클래스: 클래스 내부에 선언한 클래스. 바깥 클래스가 없다면 필요 없을 만큼 긴밀한 관계일 때 사용한다. 중첩 인터페이스: 클래스 내부에 선언한 인터페이스. 바깥 클래스가 없다면 필요 없을 만큼 긴밀한 관계일 때 사용한다. 중첩 클래스에는 크게 멤버 클래스와 로컬 클래스로 나눌 수 있다. 멤버 클래스는 클래스의 멤버, 즉 필드와 메소드로 선언된 클래스이고, 인스턴스 멤버 클래스와 정적 멤버 클래스로 나눌 수 있다. 로컬 클래스는 생성자 또는 메소드 내부에 선언된 클래스이다. 중첩 클래스도 컴파일하면 파일이 생기는데 멤버 클래스는 "A % B.class" 의 형..
프로그래머스 탐욕법 레벨 1 체육복 문제 설명 점심시간에 도둑이 들어, 일부 학생이 체육복을 도난당했습니다. 다행히 여벌 체육복이 있는 학생이 이들에게 체육복을 빌려주려 합니다. 학생들의 번호는 체격 순으로 매겨져 있어, 바로 앞번호의 학생이나 바로 뒷번호의 학생에게만 체육복을 빌려줄 수 있습니다. 예를 들어, 4번 학생은 3번 학생이나 5번 학생에게만 체육복을 빌려줄 수 있습니다. 체육복이 없으면 수업을 들을 수 없기 때문에 체육복을 적절히 빌려 최대한 많은 학생이 체육수업을 들어야 합니다. 전체 학생의 수 n, 체육복을 도난당한 학생들의 번호가 담긴 배열 lost, 여벌의 체육복을 가져온 학생들의 번호가 담긴 배열 reserve가 매개변수로 주어질 때, 체육수업을 들을 수 있는 학생의 최댓값을 return 하도록 solution 함수를..