ABOUT ME

-

Today
-
Yesterday
-
Total
-

Post Calendar

«   2024/09   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
  • 정보처리기사 실기 스터디[2022-09-29] - 프로그래밍 언어 활용
    자격증/정보처리기사 2022. 9. 29. 15:09

    📌 Study

    🔸 2022-09-29

    [프로그래밍 언어 활용]

    1. 기본 문법 활용하기

    • 자바 자료형
    HashSet 중복된 원소를 허용하지 않는 집합(Set)의 성질 가진 클래스, 순서가 중요하지 않음
    ArrayList 크기가 가변적으로 변하는 선형리스트의 성질을 가진 클래스, 순서가 중요함(인덱스 통해 접근가능)
    LinkedList 데이터를 저장하는 노드가 이전 노드와 다음 노드의 상태를 알고 있는 링크드 리스트 자료구조를 구현한 클래스
    HashMap 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료 구조를 구현한 클래스

     

    • HashSet 선언
      • Set 변수명 = new HashSet();
      • HashSet 변수명 = new HashSet();

     

    • HashSet 메서드
      • add(값) : 값을 추가하는 메서드, 중복된 값이 들어오면 추가되지 않음
      • remove(값) : 값을 제거하는 메서드
      • size() : HashSet에 들어있는 원소의 개수를 얻는 메서드

     

    • HashSet 예시
        public static void main (String[] args) {
            Set h = new HashSet();
    
            h.add(2);       
            System.out.println(h);      // [2]
    
            h.add(1);
            System.out.println(h);      // [1, 2]
    
            h.add(1);
            System.out.println(h);      // [1, 2]
    
            h.remove(1);
            System.out.println(h);      // [2]
    
            System.out.println(h.size());       // 1
        }

     

    • ArrayList 선언
      • List 변수명 = new ArrayList();
      • `ArrayList 변수명 = new ArrayList();``

     

    • ArrayList 메서드
      • add(값) : 값을 추가하는 메서드
      • add(인덱스, 값) : 해당 인덱스(번지)에 값을 추가하는 메서드
      • remove(인덱스) : 해당 인덱스(번지)에 값을 제거하는 메서드

     

    • 오버로딩 : 함수 이름 동일, 파라미터 다름(같은 레벨)
    • 오버라이딩 : 함수 이름 동일, 파라미터 동일(부모 - 자식 간)

     

    • ArrayList 예시
        public static void main (String[] args) {
            List a = new ArrayList();
    
            a.add(2);
            System.out.println(a);      // [2]
    
            a.add(1);
            System.out.println(a);      // [2, 1]
    
            a.add(1);
            System.out.println(a);      // [2, 1, 1]
    
            a.add(1, 3);
            System.out.println(a);      // [2, 3, 1, 1]
    
            a.remove(2);
            System.out.println(a);      // [2, 3, 1]
    
            System.out.println(a.get(2));       // 1
            System.out.println(a.size());       // 3

     

    • HashMap 선언
      • Map 변수명 = new HashMap();
      • HashMap 변수명 = new HashMap();

     

    • HashMap 메서드
      • put(키, 값) : 해당 키에 해당하는 값을 추가하는 메서드
      • remove(키) : 해당 키에 해당하는 값을 제거하는 메서드
      • get(키) : 해당 키에 해당하는 값을 얻는 메서드
      • size() : HashMap에 들어있는 원소의 개수를 얻는 메서드

     

    • HashMap 예시
        public static void main (String[] args) {
            Map h = new HashMap();
    
            h.put(1, "A");
            System.out.println(h);      // {1=A}
    
            h.put(1, "C");
            System.out.println(h);      // {1=C}
    
            h.put(2, "D");
            System.out.println(h);      // {1=C, 2=D}
    
            h.remove(1);
            System.out.println(h);      // {2=D}
    
            System.out.println(h.get(2));       // D
            System.out.println(h.size());       // 1

     

    • 파이썬 자료형
    세트형 중복된 원소를 허용하지 않는 집합의 성질을 가지고 있는 자료 구조
    리스트형 크기가 가변적으로 변하는 선형리스트의 성질을 가지고 있는 자료 구조
    튜플형 초기에 선언된 값에서 값을 생성, 삭제, 수정이 불가능한 형태의 자료 구조
    딕셔너리형 키와 값으로 구성된 객체를 저장하는 구조로 되어 있는 자료 구조

     

    • Set 선언
      • 세트명 set [요소1, 요소2, ...]
      • 세트명 = {요소1, 요소2, ...}

     

    • Set 메서드
      • add(값) : 값을 1개 추가하는 메서드
      • update([값1, 값2, ...]) : 여러 개의 값을 한꺼번에 추가하는 메서드
      • remove(값) : 특정 값을 제거하는 메서드

     

    • Set 예시
      s = {1, 5, 7}
    
      s.add(3)
      print(s)    // {1, 3, 5, 7}
    
      a.add(5)
      print(s)    // {1, 3, 5, 7}
    
      s.update([1, 2, 3, 4])
      print(s)    // {1, 2, 3, 4, 5, 7}
    
      s.remove(1)
      print(s)    // {2, 3, 4, 5, 7}

     

    • 기출
      a = {'일본', '중국', '한국'}
      a.add('베트남')    // {'일본', '중국', '한국', '베트남'}
      a.add('중국')   // {'일본', '중국', '한국', '베트남'}
      a.remove('일본')    // {'중국', '한국', '베트남'}
      a.update({'홍콩', '한국', '태국'})    // {'중국', '한국', '베트남', '홍콩', '태국'}
    
      print(s)    // {'중국', '한국', '베트남', '홍콩', '태국'}

     

    • List 선언
      • 리스트명 = [요소1, 요소2, ...]

     

    • List 메서드
      • append(값) : 리스트 마지막 요소 뒤에 값을 추가하는 메서드
      • insert(인덱스, 값) : 리스트의 인덱스 위치에 값을 삽입하는 메서드
      • remove(값) : 리스트에서 해당하는 값을 제거하는 메서드, 해당하는 값이 여러 개 있을 경우 가장 앞에 있는 값을 제거

     

    • 인덱싱
    첫 번째 요소 두 번째 요소 ... 뒤에서 두 번째 요소 마지막 요소
    0 1 ... (n-2) (n-1)
    -n -(n-1) ... -2 -1

     

    • 인덱싱 예시
      a = [4, 2, 7, 3, 5]
    
      print(a[1])     // 2
      print(a[-3])    // 7

     

    • 슬라이싱
      • [시작 인덱스 : 종료 인덱스 : 스텝]
      • 시작 인덱스 : 슬라이싱을 시작하는 인덱스, 생략할 경우 처음부터 슬라이싱
      • 종료 인덱스 : 슬라이싱을 종료하는 인덱스, 종료 인덱스에 있는 인덱스 전까지 슬라이싱, 생략할 경우 마지막까지 슬라이싱
      • 스텝 : 몇 개씩 끊어서 슬라이싱 할 지 결정하는 값, 생략할 경우 1이 기본값

     

    • List 슬라이싱 예시
      a = [4, 2, 7, 3, 5]
      print(a[0:4:2])     // [4, 7]

     

    • List 예시
      l = [3, 5, 7]
      l.append(3)
      print(l)    // [3, 5, 7, 3]
    
      l.insert(2, 4)
      print(l)    // [3, 5, 4, 7, 3]
    
      l.remove(3)
      print(l)    // [5, 4, 7, 3]
    
      print(l[:2])    // [5, 4]

     

    • 기출
      string = 'Hello World'
      m = string[0:3] + string[-3:]
      print(m)      // Hel + rld = Helrld
      a = [0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
      a[:7:2]     // [0, 20, 40, 60]
    • 튜플 선언
      • 튜플명 = (요소1, 요소2, ...)

     

    • List, Tuple 차이
      List Tuple
    CRUD 생성, 삭제, 수정 가능 생성, 삭제, 수정 불가능
    표기법 [ , ] ( , )

     

    • 딕셔너리 선언
      • 딕셔너리명 = {키1 : 값1, 키2 : 값2, ...}

     

    • 딕셔너리 추가 / 삭제
    요소 추가 딕셔너리명[키] = 값
    요소 삭제 del 딕셔너리명[키]

     

    • 딕셔너리 예시
      d = { 'A' : 5, 'C' : 4}
      print(d)
    
      d['K'] = 7
      print(d)    // d = { 'A' : 5, 'C' : 4, 'K' : 7}
    
      del d['C']
      print(d)    // d = { 'A' : 5, 'K' : 7}
    
      d['K'] = 6
      print(d)    // d = { 'A' : 5, 'K' : 6}

     

    • 식별자 개념
      • 변수, 상수, 함수 등 서로 구분하기 위해서 사용되는 이름

     

    • 식별자 명명 규칙
      • 사용 가능 문자 : 영문 대문자/소문자, 숫자, 밑줄('_') 사용이 가능 (a, A, a1, _, _hello)
      • 변수 사용 규칙 : 첫 자리에는 숫자를 사용할 수 없음, 변수 이름의 중간에는 공백 사용 불가 (_1, a1, a100, my_student)
      • 변수 의미 부여 : 데이터 값의 의미나 역할을 표현, 이미 사용되고 있는 예약어의 경우에는 변수 사용 불가 (age, student, For, IF)

     

    • 식별자 표기법
    카멜 표기법 식별자 표기 시 여러 단어가 이어지면 첫 단어 시작만 소문자로 표시, 각 단어의 첫 글자는 대문자로 표기법
    파스칼 표기법 식별자 표기 시 여러 단어가 이어지면 각 단어의 첫 글자는 대문자로 표기법
    스네이크 표기법 식별자 표기 시 여러 단어가 이어지면 단어 사이에 언더바를 넣는 표기법
    헝가리안 표기법 식별자 표기 시 두어에 자료형을 붙이는 표기법

    댓글

Designed by Tistory.