상세 컨텐츠

본문 제목

프로그래머 도전기 23일차

프로그래머가 될거야!

by Choyee 2023. 9. 20. 23:41

본문

오늘은

학원에서 수업으로 배우는 자바의 내용이 점점 복잡해져가고 있습니다

그런대로 잘 따라가고있기는 합니다만 전부 다 습득해서

차곡차곡 잘 다져나가는 과정이 아무래도 시간이 부족한 느낌입니다

코딩 테스트도 틈나는 대로 풀려고 하고 있고

다른 프로그래밍 언어도 조금 들여다볼까 생각하고 있어서

좀 더 집중을 해야할 것 같습니다

 

JAVA 수업

abstract class A{
    일반메서드()
    abstract 추상메서드()
    final 템플릿 메서드 ()
}


final이 있는 class
String, Integer -> 기반 클래스는 변경하면 안되므로 final로 정의됨
상숭 - 1개
열거형 상수 0enum Level{
USER, ADMIN
  }
회원 - 사용자(User), 관리자(Admin)

인터페이스 = 상속관계 아님

인터페이스 -> 다중 인터페이스 구현
                  다중 상속 가능

클래스 -> 다중 상속은 불가능

01

배열 인덱스 오류
숫자 - 문자형
4 / 0 
Exeption - 예외(Error)
Runtime - 실행
try - catch()문
try - catch() - catch()문

  try{
      오류가 날 수 있는 영역
   }catch(Exception e){
      처리문장
   }finally{
      실행문
   }

012

중첩 클래스(내부 클래스) - App
    Class A{
        Class B{
        }
     } 
익명 클래스, 익명 메서드(람다식)
지역 내부 클래스 - 메서드 내부 클래스

내부 인터페이스
    class Button{
      interface On...{
      }
    } 

012345

 

코딩 테스트
문자열에 따라 다음과 같이 두 수의 크기를 비교하려고 합니다. 두 수가 n과 m이라면 ">", "=" : n >= m "<", "=" : n <= m ">", "!" : n > m "<", "!" : n < m 두 문자열 ineq와 eq가 주어집니다. ineq는 "<"와 ">"중 하나고, eq는 "="와 "!"중 하나입니다. 그리고 두 정수 n과 m이 주어질 때, n과 m이 ineq와 eq의 조건에 맞으면 1을 아니면 0을 return하도록 solution 함수를 완성해주세요.
class Solution {
    public int solution(String ineq, String eq, int n, int m) {
        if((ineq.equals(">") && eq.equals("=") && n >= m) ||
           (ineq.equals("<") && eq.equals("=") && n <= m) ||
           (ineq.equals(">") && eq.equals("!") && n > m) ||
           (ineq.equals("<") && eq.equals("!") && n < m)){
            return 1;
        }else{
            return 0;
        }
    }
}

String에서 지원하는 equals라는 문자열 비교 메서드를 사용하면 
주소 값이 아닌 data값을 비교하기 때문에 우리가 원하는 결과를 얻을 수 있습니다.

 

Description 두 정수 a, b와 boolean 변수 flag가 매개변수로 주어질 때, flag가 true면 a + b를 false면 a - b를 return 하는 solution 함수를 작성해 주세요.
class Solution {
    public int solution(int a, int b, boolean flag) {
     int answer = (flag ? (a+b) : (a-b));
         return answer;
    }
}

삼항 연산자라는 (조건문) : ? 참 : 거짓 문법을 사용하여 간단하게 해결할 수 있었습니다

 

JavaScript

* 숫자 자료형이 하나이다 -> 양수, 음수, 정수, 소수 모두 포함

* chrome F12 -> console 창에서 작성 가능

* % = 나머지 연산자
   ** = 제곱 연산자

* NaN(Not a Number) = 숫자는 아니지만 숫자로 간주된다 

typeof = 연산자로 간주
         => 피 연산자가 필요 -> 숫자 1개로도 충분
         => 0/0 = NaN -> Number로 판단 해줌

NaN이 들어간 모든 연산의 값 = NaN이다

* 변수 = 값에 어떤 이름을 저장
         JS로 그 값을 저장
         -> 다시 돌아오거나 다시 쓰거나 업데이트하거나 불러올 수 있게 해줌

* 콘솔에서는 세미콜론; 을 자바스크립트에서 자동으로 넣어준다
원칙은 변수를 선언할때 마지막에 세미콜론; 을 꼭 넣어주어야 한다
변수를 선언하면 고정된 값을 갖게 되며
값을 변경해주려면 직접 수동으로 변수의 값을 바꿔주어야 한다

변수(숫자) 업데이트
변수 +=, -=, *=, /= num
 ++,-- = 1씩 더하기, 빼기

* i++ vs ++i
i++ = 증가시키기 이전의 값이 먼저 반환 -> 결과값은 나중에 변수 i에 반영
++i = 먼저 변수의 값을 1 증가시킴 -> 증가한 값을 결과로 반환

* const(constat) = 상수 = 항상 일정한 값, 바뀌지 않음
const 이름 = 숫자; => 상수 -> 값을 업데이트 할 수 없다
const 변수를 써야하는 상수값이 아닌 경우
 -> let 사용 = 바꿀 수 있는 값을 사용할 때
 -> var = 옛날 방식


 

 

2023. 09. 20 (수)

관련글 더보기