JAVA

자바 기초다지기(#11)

정숙씨의 쏠쏠한 코딩 2020. 10. 10. 18:59

-두 값의 정렬-

두 값에 대한 크기를 정렬하는 소스코드이다.

import java.util.Scanner;

 

public class Sort2 {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner stdIn = new Scanner(System.in);

 

System.out.println("변수 a = ");

int a = stdIn.nextInt();

System.out.println("변수 b = ");

int b = stdIn.nextInt();

 

if(a>b) {

int t = a;

a = b;

b = t;

}

 

System.out.println("ab가 되도록 정렬 했습니다.");

System.out.println("변수 a는"+a+"입니다.");

System.out.println("변수 b는"+b+"입니다.");

 

}

 

}

블록 내에서 실행되고 있는 두 값의 교환순서

1.a의 값을 t에 우선 저장한다.

2.b의값을 a에 대입하게된다.

3.t의 저장해둔 최소a의 값을 b에 대입하게된다.

입력값 57,13일시 순서도

1 2 3 4
a=57
b=13
t=0
a=57
b=13
t-57
a=13
b=13
t=57
a=13
b=57
b=57

-switch 문-

-스위치 문을 이용하면 한번애 여러분기 처리가 가능하다.

-분기를 간결하게 구현 할수 있는것이 switch문(switch statement)문, swtich문은 어떤 식을 평가한 값에 따라서 프로그램의 흐름을 복수로 분기시키는 문이다.

*case 1:과 같이 프로그램의 이동하는곳에 대해 나타내는 표시는 레이블(label)이라고 한다.

-break-

- switch 프로그램 문의 흐름을 중지 시키는것이 break문이다.

- 레이블을 진행하다가 break구문을 만날경우 그 즉시 작동중지.

ex)

case 1: 

System.out.println("안녕하세요");

break;

->안녕하세요를 한번만 출력 한 후 다음 구문을 실행시키지 않는다.

-default-

- switch문을 진행시 특정 레이블과 일치하지 않을때 이동 할 곳을 나타내는 레이블

- 분기를 위해 제어식을 평가 한 값이 모든 case와 일치하지 않을 경우 default 레이블로 이동한다.

-Swtich 실습 예제 구문-

import java.util.Scanner;

 

public class FingerFlashing1 {

 

public static void main(String[] args) {

// TODO Auto-generated method stub

Scanner stdIn = new Scanner(System.in);

 

System.out.println("가위바위보할 숫자를 입력하십시오 0,1,2");

int rock = stdIn.nextInt(); // import한 Scanner통해 수치 입력

 

switch(rock) {

case 0 : System.out.println("가위"); // 숫자 0 입력시 0번 레이블 실행

break; // 가위를 출력 후 작동 중지

case 1 : System.out.println("보"); // 숫자 1 입력시 1번 레이블 실행

break; // 1번 레이블 결과값인 보를 출력 후 작동 중지

case 2 : System.out.println("주먹"); // 숫자 2 입력시 2번 레이블 실행

break; // 2번 레이블 결과 값인 주먹을 출력 후 작동 중지

}

 

}

 

}