전체 글

고양이가 우다다다 뛰는 것처럼 IT 개발 관련 글과 일상 글을 쓰는 블로그입니다.
· DB/MySQL
MySQL 달력 테이블 생성 방법 토이 프로젝트 진행 중 데이터 생성 시 해당 날짜의 특정 휴무 여부 등등 체크가 필요하므로 달력 테이블 생성이 필요했습니다. MySQL 생성법을 찾아본 뒤 사용 DB인 H2로 변환해서 사용했습니다. 아래는 생성을 위한 쿼리문입니다. 달력 테이블 관리를 위한 컬럼은 추가, 삭제가 필요합니다. -- 달력 생성을 위한 임시 테이블 T CREATE TABLE T (N INT); INSERT INTO T VALUES (1); -- 아래 INSERT 문을 반복하면 행이 생성된다. -- 10년치 데이터는 3650일 가량 되므로 13번 반복한다(4096행) INSERT INTO T SELECT * FROM T; -- 실질적으로 날짜를 저장할 테이블이다. CREATE TABLE CM_C..
객체지향 5대 원칙 SOLID, OOP 5대 원칙 각 원칙의 맨 앞 글자를 따서 SOLID 원칙이라고 불립니다. SOLID는'견고한'이라는 뜻을 가지고 있습니다. 이 다섯 가지 원칙을 지키며 개발을 진행하면 유지보수에 용이한 견고한 코드를 작성할 수 있다는 것을 나타내기도 한다고 합니다. SRP (단일책임의 원칙 : Single Responsibility Principle) OCP (개방폐쇄의 원칙 : Open Close Principle) LSP (리스코프 치환의 원칙 : The Liskov Subsitution Principle) ISP (인터페이스 분리의 원칙 : Interface Segregation Principle) DIP (의존성 역전의 원칙 : Dependency Inversion Prin..
· Git
목표 Git Bash를 사용해 GitHub 저장소에 내 소스코드(프로젝트) 업로드 하기 방법 github를 다운 받는다. 다운로드 링크 본인 github 계정에 새로운 repository를 생성한다. 작업 중인 프로젝트의 폴더(github에 올릴 폴더)를 우 클릭해 Git Bash Here를 클릭한다. 커맨더 창이 뜨면 아래와 같이 진행한다. 1) 초기화 git init 2) 저장소 연결 - origin 다음의 git 주소는 업로드 할 본인 github repository 주소를 넣는다. git remote add origin https://github.com/wooda323/practice.git git add . 3) 커밋 - 커밋을 진행하며 커밋 메세지를 작성한다. git commit -m '프로젝..
문제 설명 문제 링크 구름LEVEL 코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이 level.goorm.io 문제 풀이 import java.io.*; import java.util.*; class Main { public static void main(String[] args) throws Exception { Scanner sc = new Scanner(System.in); // 램 갯수 int cnt = sc.nextInt(); sc.nextLine(); // 램 용량 String str = sc.nextLine(); Strin..
getOrDefault Java 8에서 추가된 Collection API 함수들 중 일부이다. V getOrDefault(Object Key, Object defaultValue) 찾는 key가 존재한다면 찾는 key의 value를 반환하고 없거나 null이면 default 값을 반환한다. 사용 방법 getOrDefault(Object key, V DefaultValue) key : map 요소의 키이다. defaultValue : 지정된 키로 매핑된 값이 없거나 null이면 반환하는 기본 값이다. import java.util.HashMap; public class practice { public static void main(String arg[]) { String [] abc = { "A", "B"..
문제 설명 문제 링크 코딩테스트 연습 - 모의고사 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 programmers.co.kr 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 방식: 1, 2, 3, 4, 5, 1, 2, 3, 4, 5, ... 2번 수포자가 찍는 방식: 2, 1, 2, 3, 2, 4, 2, 5, 2, 1, 2, 3, 2, 4, 2, 5, ... 3번 수포자가 찍는 방식: 3, 3, 1, 1, 2, 2, 4, 4, ..
문제 설명 문제 링크 코딩테스트 연습 - JadenCase 문자열 만들기 JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. 제한 조건 programmers.co.kr JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요.제한 조건 s는 길이 1 이상인 문자열입니다. s는 알파벳과 공백문자(" ")로 이루어져 있습니다. 첫 문자가 영문이 아닐때에는 이어지는 영문은 소문자로 씁니다. ( 첫번째 입..
String char 변환 char int 변환 1. String -> char 형 변환 str.charAt(i) public static void main(String[] args) { char temp; String str = "woodadada" // 해당 str의 인덱스 위치의 문자 추출 temp = str.charAt(0); System.out.println(temp); //출력결과: w } 2. char -> int 형 변환 str.charAt(i) - '0' Character.getNumericValue (str.charAt(i)); public static void main(String[] args) { int sum = 0; int sum1 = 0; String str = "1234566..
문제 설명 문제 링크 정수를 저장한 배열, arr에서 가장 작은 수를 제거한 배열을 리턴하는 함수, solution을 완성해주세요. 단, 리턴하려는 배열이 빈 배열인 경우엔 배열에 -1을 채워 리턴하세요. 예를 들어 arr이 [4,3,2,1]인 경우는 [4,3,2]를 리턴하고, [10] 면 [-1]을 리턴합니다. 제한 조건 arr은 길이 1 이상인 배열입니다. 인덱스 i, j에 대해 i ≠ j이면 arr [i] ≠ arr [j]입니다. 입출력 예 arr return [4,3,2,1] [4,3,2] [10] [-1] 문제 풀이 class Solution { public int[] solution(int[] arr) { if(arr.length == 1){ int[] a = new int[] {-1}; re..
https://programmers.co.kr/learn/courses/30
woodadada
woodadada 개발 블로그