2024/3/27 오늘배운것
public class TypeEx01 {
public static void main(String[] args ) {
// 문자 : 'a'
// cf)문자열 : "abcded234"
char ch1 = 'a';
System.out.println("ch1 : " + ch1);
char ch2 = 'A';
System.out.println("ch2 : " + ch2);
}
}
public class TypeEx02 {
public static void main(String[] args) {
// 정수형 리터럴
int num0ne = 100;
System.out.println("num0ne : " + num0ne);
//정수형 리터럴
long numTwo = 10000000000L;
System.out.println("numTwo : " + numTwo);
//실수형 리터럴
double numThree = 2.34;
System.out.println("numThree : " + numThree);
//실수형 리터럴
float numFour = 2.34F;
System.out.println("numFour : " + numFour);
//논리형 리터럴 : true, false
boolean bo = true;
System.out.println("논리값 : " + bo);
// 문자형 리터럴
char ch = '65';//65 = int 이 문자의타입은 int
System.out.println("문자 리터럴 :" + ch);
// 문자열 리터럴
String st = "안녕";
System.out.println("문자형 리터럴 : " + st);
}
}
public class TypeEx03 {
public static void main(String[] args) {
//[정밀도]
//float: 6자리만 표현 소수점 3.123456
float num1 = 3.123456789123456789F;
System.out.println("num1 : " + num1);
// double : 15자리
double num2 = 3.123456789123456789;
System.out.println("num2 : " + num2);
}
}
public class OperatorEx01 {
public static void main(String[] args) {
// 산술 연산자
// int num1 = 5;
// int num2 = 3;
int num1 = 5, num2 = 3; //같은 타입 쓸땐 , 쓰고 이어서쓰면됨
System.out.println("덧셈 : " + (num1 + num2));
System.out.println(num1 + num2 + "--> 덧셈 끝!!");
System.out.println("뺄셈 :" + (num1 - num2)); // 문자열과 함수를 뺄수가없음 ("뺄셈 :" + num1 - num2);< 오류뜸
System.out.println("곱셈 : " + num1 * num2); // ()를안해도 계산이되는이뉴는 연산자 우선순위 *곱하기가 있어서 먼저계산됨
System.out.println("몫 : " + num1/num2);
System.out.println("나머지 : " + (num1 % num2)); // 나머지는 짝수/홀수 구분하거나 숫자의 배수를찾는데씀
}
}
public class OperatorEx02 {
public static void main(String[] args) {
// 변수 선언
// 자료형 변수명;
int n1 = 5, n2 = 3;
// n1 = n1 + n2;
n1 += n2; // n1 = n1+n2; = n1 + =n2;
System.out.println("n1 : " + n1);
System.out.println("n1 : " + n2);
}
}
public class OperatorEx03 {
public static void main(String[] args) {
int n1 = 5;
int n2 = 3;
System.out.println("크니? " + (n1 > n2));
boolean result = n1 > n2;
System.out.println("result >>" + result);
System.out.println("다르니?" + (n1 != n2));
System.out.println("같니?" + (n1 == n2));
}
}
public class Quiz01 {
public static void main(String[] args) {
//
// [문제]조건연산자 ==============================================
// num의 값이 양수이면 2 증가한 값을 result에 저장하고,
// num의 값이 음수이면 5 감소한 값을 result에 저장하시오.
// result에 저장된값을 출력하시오.
// * =====================================
int num = 5;
//String result = (num<5) ? "5보다적다": "7보다크다";
int result = (num > 0) ? num +2 : num -5;
System.out.println("result : " + result);
int num2 = 5;
int result1 = (num2 > 0) ? num2 +2 : num -5;
System.out.println("result : " + result1);
}
}
public class CastingEx01 {
public static void main(String[] args) {
// [형변환]=====================
// 1.강제 형변환, 명시적 형변환
// 2.자동 형변환, 묵시적 형변환
int n1 = 9;
int n2 = 2;
System.out.println("n1/n2 = " + n1/n2);
System.out.println("n1/n2 = " + n1/(float)n2);
System.out.println("n1/n2 = " + (float)(n1/n2));
}
}
public class CastingEx02 {
public static void main(String[] args) {
/*
* [----------정수----------] [---실수----]
* byte - short- int - long - float - double
* 실수가많으므로 정수/실수 끼리면 정수를 실수로 바꿔줘야함 실수에서 정수x
* 정수에서>실수 O 실수에서>정수 X
*
*/
int num = 100;
// 강제 형변환(명시적 형변환): 큰크기에서 작은크기로 바꿀때 필요한것
short sh = (short)num;
byte by = (byte)num;
float fo2 = 2.34F;
// 자동 형변환 : 작은 크기 -> 큰 크기를 자동으로 되는것들
long lo = num;
float fo = num;
System.out.println(fo);
}
}
프로젝트 생성 -> 파일추가 순으로 이클립스에서
프로젝트 생성 -> ctrl + n
라인 삭제 : ctrtl + d
기본 자료형
정수형 실수형 논리형
정수형
byte - char - short- int - long
1 2 2 4 8 byte
문자 기본
실수형 [정확도소수점]
float double
4 8
플롯과 더블은 정확도에 따라 나눠짐
float 소수 6자리까지 double 소수 15자리까지
논리 형
boolean
1
nul = 0
char 양수만 표현 0부터시작해서 양수로두배늘어남
short 음수도 표현
클린 코드 책 사면조음
literal 리터럴
- 그 자체로의 값을 의미
-이름없음
-접미사 : 정수형 L literal,
실수형 F falsed D double
- 정수형 리터럴 : int
- 실수형 리터럴 : double
- 논리형 리터럴 : boolean
- 문자형 리터럴 : int
- 문자열 리터럴 : String
상수 (constant) - 변하지않음
접미사를 붙이면 int 에서 long 으로 됨 왜냐하면 기본형이 int 기때문에 한계가있음 글서 바꿔줘야할필요가잇음
논리값 -> 2진수로 바뀔때
true 1
false 0
정수 -> 논리값 으로 바뀔때
1 true
0 false
연산자
논리 연산자
1. && and 연산자 교집합
t&&t=t
t&&f=f
f&&f=f
2. || or 연산자 합집합
t||t = t
t||f = t
f||f = f
3. not 연산자 (단항 연상자 오른쪽왼쪽중하나 1개만 식)
! t = f
! f = t
assignment operator 할당 연산자
자바는 왼쪽에 무조권 변수가 와야함
1증가/1감소 연산자
num+