알고리즘, MySQL, 후발대 수업

우정·2023년 1월 9일
0

[내일배움캠프] TIL

목록 보기
36/50

프로그래머스

편지

  • Java
class Solution {
    public int solution(String message) {
        int answer = message.length() * 2;
        return answer;
    }
}
  • 문자열을 배열로 바꾸기
    • toCharArray() 함수
    • 반복문
    class Solution {
      public int solution(String message) {
          char[] arr = new char[message.length()];
          int answer = 0;
          for (int i = 0; i < arr.length; i++) {
              answer += 1;
          }
          return 2*answer;
      }
    }
  • 배열의 길이 구하기 -> length 이용하기
  • Python
def solution(message):
    answer = len(message) * 2
    return answer

배열 원소의 길이

  • Java
class Solution {
    public int[] solution(String[] strlist) {
        int[] answer = new int[strlist.length];
        for (int i = 0; i < strlist.length; i++) {
            answer[i] = strlist[i].length();
        }
        return answer;
    }
}
  • Python
def solution(strlist):
    answer = []
    for i in strlist:
        answer.append(len(i))
    return answer

MySQL

설치오류

# USE 문
USE 데이터베이스_이름;

# SELECT 문의 기본 형식
SELECT select_expr
	[FROM table_references]
	[WHERE where_condision]
	[GROUP BY {col_name | expr | position}]
	[HAVING where_condition]
	[ORDER BY {col_name | expr | position}]
	[LIMIT {[offset,] row_count | row_count OFFSET offset}]
    # [] 생략 가능, 순서는 바뀌면 안 됨
    
# SELECT ~ FROM
SELECT 열_이름 FROM 테이블_이름

# WHERE 절
SELECT 열_이름 FROM 테이블_이름 WHERE 조건식;

  # 관계연산자: >  <  >=  <=  =
  # 논리연산자: AND  OR
SELECT mem_name, height, mem_number 
	FROM member
	WHERE height >= 165 AND mem_number > 6; 
 
# BETWEEN ~ AND : 숫자의 범위를 나타내는 조건식
SELECT * 
	FROM member
	WHERE height BETWEEN height 163 AND 165;
    
# IN() : 문자로 표현되는 조건식
SELECT mem_name, addr
	FROM member
	WHERE IN('경기', '전남', '경남');

# LIKE : 문자열의 일부 글자 검색하기
# % : 무엇이든 허용
SELECT * FROM member WHERE mem_name LIKE '우%';
# 언더바(_): 한글자 매치
SELECT * FROM member WHERE mem_name LIKE '__핑크';

# 서브쿼리 : SELECT 안에 또 다른 SELECT
SELECT mem_name, height FROM member 
	WHERE height > (SELECT height FROM member WHERE mem_name = '에이핑크');
    # (SELECT height FROM member WHERE mem_name = '에이핑크') == 164
    
# ORDER BY : 결과가 출력되는 순서 조절하기
# 오름차순
SELECT mem_id, mem_name, debut_date FROM member ORDER BY debut_date;
# 내림차순
SELECT mem_id, mem_name, debut_date FROM member ORDER BY debut_date DESC;

# LIMIT : 출력하는 개수 제한
SELECT mem_name, debut_date
	FROM member
	ORDER BY debut_date
	LIMIT 3;
    
# DISTINCT : 중복된 데이터를 1개만 남김
SELECT DISTINCT addr FROM member;

# GROUP BY : 출력 결과를 그룹으로 묶어 줌
SELECT mem_id, SUM(amount) FROM buy GROUP BY mem_id;

# HAVING 절 : 집계 함수에 대해서 조건을 제한하는 것
SELECT mem_id, SUM(price*amount) 
	FROM buy
	GROUP BY mem_id
	HAVING SUM(price*amount) > 1000;

후발대 수업

  • getter / setter

    • 접근제어자가 private 인 경우, 다른 클래스에서 인스턴스를 생성하고
      객체의 값을 넣고 가져오는 것

      // setter
      // 메서드 (public)
      public 반환타입 메서드명 (파라미터) {) this.title=title; 
      } 
      
      // setter 는 클래스의 객체를 활용해 값을 저장하는 것이므로 
      // setter 작성시 따로 반환타입(돌려줄값)은 없습니다. 
      // 메서드명은 관습적으로 setTitle;과 같은 형식으로 작성하고 있습니다.
      
      // getter
      public String getTitle(String title) {
      	  	  return this.title= title;
      }
      // 값을 반환해 주는 것이므로 반환타입이 있다.
      // 값을 반환해 주므로 return이 꼭 존재한다. 
  • 상속

    • 생성자와 초기화 블럭은 상속되지 않고 멤버만 상속됨
    • 자손 클래스의 멤버 개수는 조상 클래스보다 항상 같거나 많음
    • 여러 클래스를 한번에 상속 받을 수 없음
    • 아래와 같이 여러 클래스가 한 부모의 클래스를 상속받을 수 있음 (상속의 상속은 가능)
      • 단일 상속의 법칙이 있음
      • 하나의 클래스는 하나의 부모만을 상속 받을 수 있음

0개의 댓글

관련 채용 정보