개발 공부 기록

[java실습문제] 형변환 본문

실습 문제/java

[java실습문제] 형변환

좨랭이 2021. 9. 8. 20:43

문제1

package com.kh.variable.practice2;

import java.util.Scanner;

public class CastingPractice {
	public void method1() {
		char ch = '\u0000';
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("문자 : ");
		ch = scanner.nextLine().charAt(0);  //???????????

		System.out.println();
		
		System.out.println(ch + "Unicode : " + (int) ch);
	}

<문자의 유니코드 출력>

(int)문자변수  ->형변환!

** ch = scanner.nextLine().charAt(0); 문자열 생성 후 바로 char() 메소드를 수행가능!!!

 

문제2

public void method2() {
		double korScore = 0;
		double engScore = 0;
		double mathScore = 0;
		int sum = 0;
		int avg = 0;
		Scanner scanner = new Scanner(System.in);
		
		System.out.print("국어 : ");
		korScore = scanner.nextDouble();
		
		System.out.print("영어 : ");
		engScore = scanner.nextDouble();
		
		System.out.print("수학 : ");
		mathScore = scanner.nextDouble();
		
		sum = (int)(korScore + engScore + mathScore);
		avg = (int)(sum / 3);
		
		System.out.println();
		
		System.out.println("총점 : " + sum);
		System.out.println("평균 : " + avg);
	}

변수, 변수명 잘 설정할 것..!!!!!!!!!!

단순하게 생각하자..

 

문제3

public void method3() {
		int iNum1 = 10;
		int iNum2 = 4;
		
		float fNum = 3.0f;
		double dNum = 2.5;
		
		char ch = 'A';
		
		System.out.println(iNum1 % iNum2);  // 2
		System.out.println((int) dNum); // 2
		
//		System.out.println((double) ((iNum2 *2) + (int) dNum)); // 10.0   // 자동 형변환을 고려하지않음!!!!
		System.out.println((iNum2 *dNum)); // 10.0
		System.out.println((double) iNum1); // 10.0
		
		System.out.println((double)iNum1 / (double)iNum2); // 2.5  
		System.out.println(dNum); // 2.5
		
		System.out.println((int) fNum); // 3
		System.out.println((iNum1 / (int) fNum)); // 3    
		
//		System.out.println((double)(iNum1 / fNum)); // 3.3333333      // 결과값(3.3333332538604736)
		System.out.println((float)(iNum1 / fNum)); // 3.3333333    
//		System.out.println((float)(iNum1 / fNum)); // 3.33333333335    // 결과값(3.3333333) 계산실수..?
		System.out.println(iNum1 / (double) fNum); // 3.33333333335
		
		System.out.println("'" + ch + "'"); // 'A'
		System.out.println((int) ch); // 65
//		System.out.println(((int)ch + iNum1)); // 75   // 자동 형변환을 고려하지않음!!!!
		System.out.println(ch + iNum1);
		System.out.println("'" + (char)(ch + iNum1) + "'"); // 'K'   
	}
}

자동 형변환 고려!!!!!

 

'실습 문제 > java' 카테고리의 다른 글

[java실습문제] 반복문 for, while  (0) 2021.09.21
[java실습문제] 조건문 if, switch  (0) 2021.09.11
[java실습문제] 연산자  (0) 2021.09.09
[java실습문제] 변수 Scanner  (0) 2021.09.08