jnk1m
Foliage IT
jnk1m
전체 방문자
오늘
어제
  • 분류 전체보기 (209)
    • Today I Learned (34)
    • Java (47)
    • Database (15)
    • [NHN Academy] (27)
    • Spring (47)
    • HTML + CSS + JavaScript (11)
    • JSP (3)
    • Node.js (10)
    • React Native (2)
    • 기타 (8)
    • 스크랩 (5)

인기 글

최근 글

티스토리

hELLO · Designed By 정상우.
글쓰기 / 관리자
jnk1m

Foliage IT

JAVA 자바 웹 개발 Day2 (Note): 입력문, 연산자, 제어문
Java

JAVA 자바 웹 개발 Day2 (Note): 입력문, 연산자, 제어문

2022. 2. 9. 19:07

2022/2/8 

 

1.  입력문

①   System.in: 키보드 장치를 직접 제어, 키 입력을 받는 표준 입력 스트림 객체.

키보드 입력 > System.in 입력 스트림 < 바이트 데이터 < Scanner < 형 변환된 데이터 < 자바 응용 프로그램

 

②   Scanner: 자바패키지에서 제공하는 클래스. 원하는 타입으로 변환해줌.

A.   import문: Scanner 클래스가 있는 자바 제공 패키지를 여기서 사용하겠다.

import java.util.Scanner; //클래스 밖, package 밑에 작성

B.   Scanner 객체 생성
Scanner sc(변수명) = new Scanner(System.in);

C.   입력 받기
String 변수명 = sc(위 변수명). nextLine();-> 입력받은 걸 문자열 String 타입으로 리턴해준다. nextLine()은 입력받고 싶은 만큼 계속 사용 가능.

D.   Scanner 객체 닫기
sc.close();
B~D까지는 메인 메서드 안에 작성

E.   스트링을 int로 바꾸는 방법
int (변수명) = Integer.parseInt(sc.nextLine());
스트링을 double로 변경
double dHeight = Double.parseDouble(height); 이렇게 하면 두 번 작성해야 하고 한 줄로 하려면
double dHeight = Double.parseDouble(sc.nextLine()); 이렇게 하면 됨.

한줄로 작성하는 예시

 

2.  연산자 operator

①   종류

A.   단항 연산자: +(양수),  –(음수), ++(증가), --(감소),!(not): 참, 거짓 앞에만 붙일 수 있는 연산자. 값을 반대로 바꿔줌. 참> 거짓, 거짓> 참

B.   이항 연산자:

     I.   산술 연산자: + - * / %

     II. 비교 연산자: < <= > >= == !=

     III.     논리 연산자: &&: A && B: A와 B 둘 다 참이어야 참
               ||: A || B: A와 B 둘다 거짓이어야 거짓. 둘 중 하나라도 참이연 참.

C.   삼항 연산자:?:

D.   대입 연산자: =

E.   복합 대입 연산자: 산술+대입: += -= *= /= %=

F.   (쉬프트/비트 연산자)

 

②   연산자 우선순위 (높은 순)
단항 연산자: ++ -- (전위형) > + - 양수 음수 > ++ -- (후위형) > !
형 변환: (타입)
산술 연산자: * / % > + -
(쉬프트 연산자)
비교연산자ㅣ < <= > >= == != instanceof
(비트 연산자)
논리 연산자: && > ||
삼항 연산자?:
(복합) 대입 연산자

 

3.  제어문

①   조건문: if문, switch문

A.   if문: 조건이 참이면 영역 안의 코드를 실행시킨다.
[구조 1]
if(조건식){
           //조건식이 참일 때 실행할 코드들 작성.
}
조건식: boolean타입의 변수 혹은 비교 연산이나 논리 연산이 혼합된 식으로 구성.
반드시 결과가 true / false 둘 중 하나여야 성립.
영역 안의 코드가 1개 명령일 경우 중괄호 생략 가능. 가급적이면 적는 게 좋다.

[구조 2]: 둘 중 하나의 블록은 반드시 실행됨. else는 옵션.
if(조건식){
                   //조건식이 참일 때 실행할 코드들
} else {
  //조건이 참이 아닐 때 실행할 코드들 작성
}

[구조 3]
if(조건식){
   // 조건식이 참일 때 실행할 코드들
} else if(조건식 2){
   //조건 2가 참일 때 실행할 코드들
} else if(조건식 3){
   //조건 3이 참일 때 실행할 코드들
} else {
   //위 조건들이 모두 성립되지 않을 때 뭔가 실행해야 되면 else를 붙여서 코드들 작성.
}

 

B.   switch 조건문
다중 선택문: 하나의 변숫값을 평가하여, 각 값에 대해 개별적으로 처리하는 문장.

변수 안에 들어있는 값과 똑같은 값이 있을 경우에 실행.
[구조]
switch(변수){
case 값 1:
  //값 1과 변수의 값이 동일한 경우 실행할 코드들
  break;
case 값 2:
  //값 2와 변수의 값이 동일한 경우 실행할 코드들
  break;
default:
  //위 값들과 일치하지 않을 경우 수행할 명령이 있으면 default에 작성.
  break; //마지막에 위치한 break는 생략 가능
}


특징:
-if문으로 대체 가능. 가독성 면에서는 switch가 나을 수도 있다.
-가능 변수 타입: int, char, String
-case 다음에는 반드시 값이 하나가 와야 한다.
-default 생략 가능

②   반복문: while, do-while, for

③   보조 제어문: break, continue(반복하다 건너뛰기)

    'Java' 카테고리의 다른 글
    • JAVA 자바 웹 개발 Day3 (Note): while문, for문, 배열
    • JAVA 자바 웹 개발 Day2 (Code)
    • JAVA 자바 웹 개발 Day1 (Code)
    • JAVA 자바 웹 개발 Day 1 (Note): 개발 환경 설정, 변수, 데이터, 형 변환, 출력문

    티스토리툴바