도라에몽주머니

[Java/Eclipse] Java 5일차 본문

Study/Java

[Java/Eclipse] Java 5일차

에몽쓰 2022. 9. 20. 16:55

Java

 

삼항연산자

: (조건식) ? (참인 경우) : (거짓인 경우)

import java.util.Scanner;

public class Exam8 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		
		int num1 = 0, num2 = 0;
		int result = 0;
		
		System.out.print("정수 입력 : ");
		num1 = sc.nextInt();
		System.out.print("정수 입력 : ");
		num2 = sc.nextInt();
		
		result = (num1 > num2) ? num1 : num2;
		
		System.out.println("큰 수 : " + result);
	}
}

 

 

예제

4개의 값을 입력받아 처리하시오.

(단, 성별: M 이면 "남자", 나머지는 "여자", 삼항연산자 이용)

 

Class name : Prac4.java

 

<실행 결과>

Input name: 민들래
Input gender (M/F): F
Input age: 25
Input height: 173.3 

이름 : 민들래
성별 : 여자
나이 : 25세
신장 : 173.3cm

import java.util.Scanner;

public class Prac4 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);
		String name;
		char gender;
		int age;
		double height;
		
		System.out.print("Input name: ");
		name = sc.next();
		System.out.print("Input gender (M/F): ");
		gender = sc.next().charAt(0);
		System.out.print("Input age: ");
		age = sc.nextInt();
		System.out.print("Input height: ");
		height = sc.nextDouble();
		
		String Gender = (gender == 'M') ? "남자" : "여자";
		
		System.out.println("이름 : " + name);
		System.out.println("성별 : " + Gender);
		System.out.println("나이 : " + age + "세");
		System.out.println("신장 : " + height + "cm");
		
		
		
	}
}

 

type별 데이터 값 비교

  • 정수, 실수, 문자, boolean

: == 이용

  • 문자열

: 변수명.equals("문자열"); 이용

→ 문자열은 레퍼런스 변수이기 때문에 ==으로 비교하면 주소를 비교해버리기 때문

→ 참조 : https://chanos.tistory.com/entry/JAVA-%EB%AC%B8%EC%9E%90%EC%97%B4String%EC%83%9D%EC%84%B1-%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%B9%84%EA%B5%90-Equals-%EC%97%B0%EC%82%B0%EC%9E%90%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90

 

 

형변환

: 데이터의 자료 형태를 바꾸는 것

 

* type 별 크기 순서

byte(1) < short(2) < int(4) < long(8) < float(4) < double(8)

 

  • 자동 형변환

: 작은 자료형에서 큰 자료형으로 이동할 때, 형변환이 자동으로 일어나는 경우

  • 강제 형변환

: 큰 자료형에서 작은 자료형으로 이동할 때 발생하는 오류를 무시하고 강제로 형변환을 하는 경우 (데이터의 손실 발생)

→ 형변환 연산자 사용

public class Exam {
	public static void main(String[] args) {
		// int to char
		int intVal = 44032;
		char charVal = (char)intVal;
		System.out.println(charVal); // 44032에 해당하는 unicode '가' 출력
    
		// double to int
		double p = 3.14;
		int pp = (int)p;
		System.out.println(pp); // 정수 부분인 3 출력
	}
}

'Study > Java' 카테고리의 다른 글

[Java/Eclipse] Java 8일차  (0) 2022.09.23
[Java/Eclipse] Java 6, 7일차  (1) 2022.09.22
[Java/Eclipse] Java 4일차  (1) 2022.09.19
[Java/Eclipse] Java 3일차  (0) 2022.09.16
[Java/Eclipse] Java 2일차  (0) 2022.09.15