java
-
[백준] 7569 토마토#JAVAAlgorithm Solving/BAEKJOON 2020. 12. 6. 17:45
BAEKJOON [7569] 토마토 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); int N,M,H; int[][][] box ; int[][][] dist ..
-
[백준] 7576 토마토 #JAVAAlgorithm Solving/BAEKJOON 2020. 12. 5. 21:23
BAEKJOON [7576] 토마토 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.LinkedList; import java.util.Queue; import java.util.StringTokenizer; public class Main { public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String inputBox; int N,M; int[][] box; int..
-
[백준] 1074 Z #JAVAAlgorithm Solving/BAEKJOON 2020. 11. 1. 11:07
BAEKJOON [1074] Z 문제 한수는 2차원 배열 (항상 2^N * 2^N 크기이다)을 Z모양으로 탐색하려고 한다. 예를 들어, 2*2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. 만약, 2차원 배열의 크기가 2^N * 2^N라서 왼쪽 위에 있는 칸이 하나가 아니라면, 배열을 4등분 한 후에 (크기가 같은 2^(N-1)로) 재귀적으로 순서대로 방문한다. 다음 예는 2^2 * 2^2 크기의 배열을 방문한 순서이다. N이 주어졌을 때, (r, c)를 몇 번째로 방문하는지 출력하는 프로그램을 작성하시오. 다음 그림은 N=3일 때의 예이다. 입력 & 출력 예제입력 출력 2 3 1 11 예제입력 출력 3 7 7 63 코드 import java.io.Buffer..
-
[JAVA] Number 클래스와 Value 메서드JAVA 2020. 7. 13. 23:24
Number 클래스와 Value 메서드 안녕하세요? 장장스입니다. 자료형 자바에는 기본형(Primitive Type)과 참조형(Reference Type)이 있습니다. 일반적으로 다음과 같이 분류 할 수 있습니다. Java Data Type ㄴ Primitive Type ㄴ Boolean Type(boolean) ㄴ Numeric Type ㄴ Integral Type ㄴ Integer Type(short, int, long) ㄴ Floating Point Type(float, double) ㄴ Character Type(char) ㄴ Reference Type ㄴ Class Type ㄴ Interface Type ㄴ Array Type ㄴ Enum Type ㄴ etc. 참조형은 Byte, Double, ..
-
[JAVA] SMTP 메일 이미지 첨부 방법 3가지JAVA 2020. 7. 4. 19:52
SMTP 메일 이미지 첨부 에러 자바로 메일을 보내야하는 일이 생겨 SMTP를 사용해 메일을 보내는 코드를 작성했다. 메일내에 이미지를 첨부해서 전송해야 했고 CID 방식을 사용해서 코드를 작성했다. 로컬에서의 테스트는 깔끔하게 네이버, 구글 등 전송받은 메일이 모두 정상적으로 출력이 되었으나 개발서버에서 테스트를 진행했을 때 일부 메일에서 정상적으로 작동이 되지 않는 일이 생겼다. 구글신의 도움을 받아 찾아본 결과 3가지의 방법이 있었다. Inline embedding 인라인 임베딩 방법은 이미지를 base64로 인코딩 하는 방법이다. 쉽게 말하면 이메일에 이미지를 문자열로 변환하여 HTML 태그를 통해 이메일에 이미지를 내장하는 방법이다. 굉장히 간단하지만 잘 사용하지는 않는다. 이메일 대략 이런식으..
-
[JAVA] 인터페이스 (interface)JAVA 2020. 7. 4. 19:12
JAVA interface 인터페이스(interface) 인터페이스는 클래스가 제공하는 기능을 명시적으로 선언하는 역할을 합니다. 인터페이스는 추상 메서드와 상수로만 이루어져 있습니다. 즉, 구현된 코드가 없기 때문에 당연히 인터페이스로 인스턴스(객체)를 생성할 수 없습니다. 그렇다면 왜 인터페이스를 사용하는 걸까요? 인터페이스를 만드는 이유? 인터페이스는 개발자에게 내가 만든 프로그램이 어떤 메서드를 제공할 건지 알려주는 설명서와 같은 역할을 합니다. 예를 들어 계산이 프로그램을 구현한 CalBase클래스가 있다고 해봅시다. 우리는 이 인터페이스클래스만 보고도 이 메서드가 어떤 매개변수를 요구하고 있으며 어떤 반환값을 요구하는지 알 수 있습니다! 전자정부 표준 프레임워크에서는 Service 패키지에서 ..
-
[JAVA] 메서드 오버라이딩JAVA 2020. 6. 27. 19:43
메서드 오버라이딩 안녕하세요? 장장스입니다. 상위 클래스 메서드를 재정의 메서드 오버라이딩은 하위클래스에서 상속받은 상위 클래스의 메서드를 재정의 하는 기능을 말합니다. 아래는 Cutomer 클래스입니다. 물건을 구매하는 Buy 메서드가 정의되어 있습니다. public class Customer { protected int id; protected String name; public void showCustomer() { System.out.println("아이디 "+id+"의 고객이름은 "+ name+"입니다."); } public int Buy(int price) { return price; } } 다음과 같이 Cutomer 클래스를 상속받은 VIPCustomer 클래스를 생성했습니다. 그런데 VIP..
-
[JAVA] 상속에서 클래스 생성과 superJAVA 2020. 6. 23. 23:47
상속에서 클래스 생성과 super 안녕하세요? 장장스입니다. 오늘은 객체지향 프로그래밍의 중요한 특징 중 하나인 상속(inheritance)에 대해 포스팅 해보겠습니다. 클래스의 상속 B 클래스가 A 클래스에게 상속받는다고 하면 다음과 같이 나타낼 수 있습니다. 클래스 간 상속을 표현할 때 하위 클래스가 상위 클래스를 바라본다는 느낌으로 화살표가 하위클래스에서 상위 클래스로 표시됩니다. 상위 클래스는 부모 클래스, 하위 클래스는 자식 클래스 라고도 불립니다. 자바에서 상속은 extends 예약어를 사용합니다. class B extends A{ } 하위 클래스가 생성되는 과정 그렇다면 하위 클래스는 어떻게 상위 클래스를 상속을 받을까요. 우리는 상속을 받는 하위 클래스가 생성되는 과정을 살펴 볼 필요가 있..
-
[JAVA] 자바, ArrayListJAVA 2020. 6. 22. 07:07
자바, ArrayList 안녕하세요? 장장스입니다. 오늘은 배열 친구 ArrayList 클래스에 대해 포스팅하겠습니다. 기존 배열의 단점 기존에 배운 기본 배열은 프로그램에서 사용하려면 항상 배열 길이를 정하고 시작해야만 했습니다. 그런데 배열의 길이를 변경해야만 하는 상황이 왔을 때 고정된 배열의 길이 때문에 코드를 수정해야만 하는 번거로운 일이 생깁니다. 합니다. ArrayList 클래스의 주요 메서드 ArrayList 클래스에는 필요한 메서드들이 이미 많이 만들어져 있습니다! 대표적인 메서드들입니다. 메서드 설명 boolean add(E e) 요소 하나를 배열에 추가합니다. E는 요소의 자료형을 의미합니다. int size() 배열에 추가된 요소 전체 개수를 반환합니다. E get(int index..
-
[JAVA] 자바, 배열 복사JAVA 2020. 6. 22. 00:06
자바, 배열 복사 안녕하세요? 장장스입니다. 오늘은 간단한 배열 복사 방법 2가지에 대해 포스팅하겠습니다. for 문을 이용한 복사 첫번째는 for문 사용입니다. for 문을 사용해서 복사하는 간단하고 쉬운 방법입니다. public class ForArrayCopy { public static void main(String[] args) { String[] arr1 = {"사과","딸기","배","포도","수박"}; String[] arr2 = new String[5]; for (int i = 0; i < arr1.length; i++) { arr2[i] = arr1[i]; } for (int i = 0; i < arr2.length; i++) { System.out.print(arr2[i]+" "); ..