자바(8)
-
[Java 에러] IllegalArgumentException
IllegalArgumentException RuntimeException 을 상속하는 에러. Thrown to indicate that a method has been passed an illegal or inappropriate argument. -> 메서드에 잘못된 argument가 입력되었음을 보여주기 위해 발생하는 에러 HTML 삽입 미리보기할 수 없는 소스 String binomial 에 연사자로 +, -, *만 제시되는 조건이 있으므로, "+", "-", "*" 외에 다른 연산자가 입력될 경우, 메서드에 잘못된 인자가 입력되었다는 예외 메세지를 발생시킬 수 있다.
2024.01.23 -
[Java 에러] BufferedReader 활용 및 에러
백준 알고리즘 15552번 문제. Java를 사용하고 있다면, Scanner와 System.out.println 대신 BufferedReader와 BufferedWriter를 사용할 수 있다. BufferedWriter.flush는 맨 마지막에 한 번만 하면 된다. 입력 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. 출력 각 테스트케이스마다 A+B를 한 줄에 하나씩 순서대로 출력한다. https://www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정..
2024.01.17 -
[자바 Java] BufferedReader 사용법
BufferedReader 클래스 호출방법 BufferedReader 클래스는 문자, 배열, 문장 등을 효율적으로 읽게 해주는 기능을 제공한다. BufferedReader 클래스는 read() 기능을 가지고 있는 reader 클래스들과 함께 사용하는 것을 권장한다. 따라서 주로, InputStreamReader 클래스, FileReader 클래스와 함께 많이 사용한다. 본 포스팅에서는 입력한 문자를 읽는 코드에 대해 다룰 예정이니 InputStreamReader를 함께 사용할 것이다. 이때 호출방법은 아래와 같다. ※ InputStreamReader는 바이트를 문자(로 변환시켜 읽어주는 역할을 한다. 위 코드는 바이트 -> 문자 -> 버퍼링의 과정을 거치는 것이다. 버퍼링은 데이터를 임시 저장소에 자장해..
2024.01.17 -
[자바 Java] 배열 오름차순 정렬, 최대값 활용
백준 알고리즘 2480문제 1에서부터 6까지의 눈을 가진 3개의 주사위를 던져서 다음과 같은 규칙에 따라 상금을 받는 게임이 있다. 같은 눈이 3개가 나오면 10,000원+(같은 눈)×1,000원의 상금을 받게 된다.같은 눈이 2개만 나오는 경우에는 1,000원+(같은 눈)×100원의 상금을 받게 된다.모두 다른 눈이 나오는 경우에는 (그 중 가장 큰 눈)×100원의 상금을 받게 된다. 예를 들어, 3개의 눈 3, 3, 6이 주어지면 상금은 1,000+3×100으로 계산되어 1,300원을 받게 된다. 또 3개의 눈이 2, 2, 2로 주어지면 10,000+2×1,000 으로 계산되어 12,000원을 받게 된다. 3개의 눈이 6, 2, 5로 주어지면 그중 가장 큰 값이 6이므로 6×100으로 계산되어 600..
2024.01.16 -
객체지향 개념_접근제어자의 필요성
자바에서 접근제어자는 총 네 가지다. 1) private -> 클래스 내부에서만 사용 가능 2) default(package-private) -> 같은 패키지 내에서만 사용 가능 3) protected -> 같은 패키지 내에서 사용 가능 + 상속된 클래스에서도 사용 가능 4) public -> 전체 전체 사용 가능 접근제어가 필요한 이유는? 예를 들어, 스피커 사용을 위한 소프트웨어를 만든다. 이때 음량이 100을 넘어가면 제품에 고장이 생길 수 있으므로, 음량 100을 넘기지 않도록 아래와 같이 작업했다. public class Speaker { private int volume; Speaker(int volume) { this.volume = volume; } void volumeUp() { if(v..
2023.12.30 -
객체지향 개념_생성자의 필요성
생성자가 없어도 메서드를 통해 자바에서 객체지향 프로그램을 활용할 수는 있다. public class MemberInit { String name; int age; int grade; void initMember(String name, int age, int grade) { this.name = name; this.age = age; this.grade = grade; } } void initMember(String name, int age, int grade)와 같이 초기화를 실행하는 메서드를 클래스에 만든다. 그리고 아래와 같이 실행 클래스에서 이 메서드를 호출할 수 있다. public static void main(String[] args) { MemberInit member1 = new Membe..
2023.12.30