변수의 타입을 변환.
(자료형)데이터;
자료형 크기(범위): byte<short/char<int<long<float<double
1.자동타입변환(업캐스팅)
큰 범위 타입<=작은 범위 타입
작은 타입을 큰 타입에 저장할 때 자동으로 타입이 변환된다.
package contents;
public class C05_Casting {
public static void main(String[] args) {
int num=10;
System.out.println((double)num);
//1.자동타입 변환
double a=1;//정수를 실수 타입에 대입
System.out.println(a);//1.0
int num1=20;
double num2=num1;//자동으로 타입이 변환되어 저장된다.
System.out.println(num2);//20.0
int b='A';//문자를 int 타입에 대입
System.out.println(b);//65
}
}
2.수동타입변환(다운캐스팅, 강제 타입 변환)
작은 범위 타입<=(타입 변환)큰 범위 타입
큰 타입을 작은 타입에 저장할 때 사용자가 수동으로 (타입변환)을 작성해야 한다.
->타입 변환시 데이터 값도 함께 변경됨!
package contents;
public class C05_Casting {
public static void main(String[] args) {
int num=10;
System.out.println((double)num);
//2.수동 타입 변환
int c;
//c=1.5->에러
c=(int)1.5;//강제로 타입 변환을 해서 대입해야함.
System.out.println(c);//1
//cast 연산자 활용
int num3=10;
int num4=4;
double divide =num3/(double)num4;
System.out.println(divide);
}
}
3.문자열 형태의 숫자를 정수 또는 실수 타입으로 변환
정수-> int num=Integer.parseInt(str1);
실수->double num=Double.parseDouble(str2);
String 타입은 수치 데이터가 아니므로 cast 연산자 사용 불가
package contents;
public class C05_Casting {
public static void main(String[] args) {
int num=10;
System.out.println((double)num);
//3.문자열 숫자를 정수 또는 실수로 변환
String str1="100";
//int numI=str1;
int numI=Integer.parseInt(str1);
System.out.println(numI+50);//150
String str2="12.34";
double numD=Double.parseDouble(str2);
System.out.println(numD+10.5);
System.out.println(str1+str2);//100 12.34->문자열 이어붙임
System.out.println(numI+numD);//숫자 덧셈
}
}
#예제:정수 부분의 합 구하기
package practice;
import java.util.Scanner;
public class Prac08 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
System.out.print("실수1을 입력하시오: ");
double num1=sc.nextDouble();
System.out.print("실수2을 입력하시오: ");
double num2=sc.nextDouble();
int a=(int)num1;
int b=(int)num2;
System.out.println("정수 부분의 합은 "+(a+b));
}
}
참.거짓으로 결과 산출
public class C06_OperatorCompare {
public static void main(String[] args) {
//논리타입 boolean은 true,false를 나타냄
int n=10;
boolean b1=n>5;
System.out.println("b1="+b1);//true
boolean b2=n<8;
System.out.println("b2="+b2);//false
boolean b3=n==10; //같은가?
System.out.println("b3="+b3);
boolean b4=n!=10; //같은가?
System.out.println("b4="+b4);
System.out.println(100>50);
System.out.println(100!=50);
}
}
조건식에 대한 결과를 참 또는 거짓으로 산출
1. &&:논리곱(and)연산자
양쪽 조건식이 모두 참->참
2. ||:논리합(or)연산자
하나의 조건식이라도 참->참
3. !:부정(not)연산자
뒤 조건식의 결과를 뒤집음
java : 5일차 (0) | 2023.01.15 |
---|---|
java:4일차 (0) | 2023.01.05 |
java : 2일차 (0) | 2023.01.05 |
java : 1일차 (0) | 2023.01.02 |
c언어:포인터 (0) | 2022.12.10 |
댓글 영역