본문 바로가기

분류 전체보기

(40)
프로그래머스 SQL 고득점 kit 정답 - SELECT https://school.programmers.co.kr/learn/challenges?tab=sql_practice_kit 1. 3월에 태어난 여성 회원 목록 출력하기 SELECT MEMBER_ID, MEMBER_NAME, GENDER, DATE_FORMAT(DATE_OF_BIRTH, "%Y-%m-%d") AS DATE_OF_BIRTH FROM MEMBER_PROFILE WHERE MONTH(DATE_OF_BIRTH) = "3" AND GENDER = "W" AND NOT TLNO IS NULL ORDER BY MEMBER_ID; Tip. 1. DATE를 그대로 출력하면 시간, 분, 초 도 같이 출력된다. 2. MONTH() 는 리턴값이 int이나 mysql은 자동형변환이 된다. 3. IS NULL ..
람다(lambda)의 소개 다음과 같은 익명 클래스로 짠 코드가 있다고 가정하자. interface Printable { void print(String s); } class Lambda { public static void main(String[] args) { Printable prn = new Printable() { // 익명 클래스 public void print(String s) { System.out.println(s); } } prn.print("What is Lambda"); } } 이는 람다로 다음과 같이 나타낼 수 있다. interface Printable { void print(String s); } class Lambda { public static void main(String[] args) { Print..
네스티드(Nested) 클래스와 이너(Inner) 클래스 네스티드 클래스의 구분 기본적으로 클래스 안에 정의된 클래스를 네스티드 클래스 라고 한다. 그리고 static 이 붙은 네스티드 클래스를 static 네스티드 클래스라 부르고 그렇지 않은 네스티드 클래스를 Non - static 네스티드 클래스 또는 이너 클래스 라고 부른다. 또한 이너 클래스 역시 세가지로 나뉘는데 멤버 (이너) 클래스, 로컬 (이너) 클래스, 익명 (이너) 클래스 의 세개로 나뉘어진다. Static 네스티드 클래스 Outer 클래스의 static 변수 공유 class Outer { private static int num = 0; static class Nested1 { void add(int n) { num += n; // Outer 클래스의 static 변수 공유 } } stati..
매개변수의 가변 인자 선언 class Varargs { public static void showAll(String...vargs) { System.out.println("LEN: " + vargs.length); for(String s : vargs) System.out.print(s + '\t'); System.out.println(); } } 위와 같이 가변인자를 선언가능하고 이 때 vargs는 String 배열의 참조 변수가 된다. 이는 컴파일러가 위의 코드를 배열 기반 코드로 수정을 하는 것이다. 즉, showAll("Box", "Toy") 를 호출하면 showAll(new String[] {"Box", "Toy"}) 를 호출한 것과 같이 되도록 컴파일러에서 처리해주는 것이다.
열거형 tip. 인터페이스 내에 선언된 변수는 public static final 이 선언된 것으로 간주 즉, 상수 인터페이스 기반 상수의 정의 : 자바 5 이전의 방식 interface Scale { int DO = 0; int RE = 1; int MI = 2; int FA = 3; omt SO = 4; int RA = 5; int TI = 6; } 이전 방식에는 문제점이 있었는데 interface Animal { int DOG = 1; int CAT = 2; } interface Person { int MAN = 1; int WOMAN = 2; } public static void who(int man) { switch(man) { case Person.MAN: System.out.println("남성 손..
제네릭 (2) 제네릭의 심화 문법 1. 제네릭 클래스와 상속 ex. class Box { T ob; public void set(T o) { ob = o; } public T get() { return ob; } } class SteelBox extends Box { public SteelBox(T o) { ob = o; } } public static void main(String[] args) { Box iBox = new SteelBox(7959); Box sBox = new SteelBox("Simple"); } 2. 타겟 타입 ex. class Box { T ob; public void set(T o) { ob = o; } public T get() { return ob; } } class EmptyBoxFa..
제네릭 (1) 제네릭의 이해 제네릭 이전의 코드 =class Apple { public String toString() { return "I am an apple."; } } class Orange { public String toString() { return "I am an orange"; } } // 다음 상자는 사과도 오렌지도 담을 수 있다. class Box { // 무엇이든 저장하고 꺼낼 수 있는 상자 private Object ob; public void ser(Object o) { ob= o; } public Object get() { return ob; } } 이렇게 짜면 Box 클래스에는 Apple, Orange 클래스 모두를 담을 수 있다. 하지만 이 경우 main 메소드를 보면 public sta..
SQL 문법 총정리 https://www.youtube.com/watch?v=vgIc4ctNFbc 를 참고하여 쓴 글입니다. 설명이 다소 부족할 수 있으므로 자세한 설명이 필요하신 분은 해당 강의를 참고해주시기를 바랍니다. 위의 영상 역시 아주 처음 데이터베이스를 접하는 분들은 힘들 수 있으므로 https://www.youtube.com/@coohde/playlists 생활코딩 일반인에게 프로그래밍을 알려주는 온라인/오프라인 활동 입니다. 채널 공개키 : MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbU/jgeYLWbmUB5pk/wlqMs+2qsOOPgN2ydxOsrWe8JJUXzj5ovsUmjfBSwLjajT6SyO00ulne3zja2PzEZC2wnJCgvZ6lr/ZLvA9yUqmrKRNa www..