1. 간단한 프린트 해보기
println : print + line , 자동 개행이 된다.
package chap_01;
public class _01_HelloWorld {
public static void main (String[] args) {
System.out.println("Hello World!!!"); /* println : print + line 한 줄 적기, 자동 개행 */
System.out.println("안녕하세요");
}
}
Hello World!!!
안녕하세요
참고.
IntelliJ 에서는
package chap_01;
public class _01_HelloWorld {
✅메인 영역을 만들 때, psvm 혹은 main 만 입력해도 메인 영역이 완성된다.
public static void main (String[] args) {
System.out.println("안녕하세요");
✅sout만 입력하고 엔터를 치면 System.out.println()이 자동 완성된다.
}
}
2. 자료형
Java의 기본 자료형에는 문자형, 정수형, 실수형, 논리형이 있습니다.
package chap_01;
public class _02_DataTypes {
public static void main(String[] args) {
System.out.println("Hello World");
System.out.println("안녕하세요!");
System.out.println(12);
System.out.println(-34);
System.out.println(3.14);
System.out.println(true);
System.out.println(false);
System.out.println(123 + 345);
}
}
3. 주석 달기.
주석은 코드에 대한 설명이나 메모를 작성하여 컴파일러가 무시하도록 하는 구문입니다.
한 줄 주석 : // 내용 , 단축키: Ctrl + /
여러 줄 주석 : /* 내용 */ , 단축키: Ctrl + Shift + /
package chap_01;
public class _04_Comment {
public static void main(String[] args) {
System.out.println("(10분전) 잠시 후 결혼식 시작 예정이오니 착석 부탁드립니다.");
// System.out.println("(5분전) 잠시 후 결혼식 시작 예정이오니 착석 부탁드립니다.");
System.out.println("지금부터 결혼식을 시작하겠습니다.");
// 변수 선언은 밑에 나오는 내용
int size = 120;
size = size + 10; // 어린이는 발이 빨리 자라기 때문에 10 큰 사이즈로 구매
System.out.println( "신발 사이즈 " + size + "으로 보여주세요.");
/*
int a = 10;
int b = 20;
System.out.println(a + b); // 30 */
}
}
(10분전) 잠시 후 결혼식 시작 예정이오니 착석 부탁드립니다.
지금부터 결혼식을 시작하겠습니다.
신발 사이즈 130으로 보여주세요.
4. 변수
자바에서는 자료형 + 변수 이름을 지정하여 메모리 공간을 확보함으로써 변수를 선언합니다.
package chap_01;
public class _03_Variables {
public static void main(String[] args) {
String name;
name = "코낄";
/* String name = "코낄"; */
int hour = 15;
System.out.println(name + "님, 배송이 시작됩니다. " + hour +"시에 방문 예정입니다.");
System.out.println(name + "님, 배송이 완료되었습니다.");
double score = 90.5; /* 실수값 */
char grade = 'A'; /* 딱 한 문자만 쓸 때는 char 사용 가능. 작은 따옴표 사용 */
name = "자바"; /* 변수 재할당 */
System.out.println(name + "님의 평균 점수는 " + score + "점 입니다.");
System.out.println("학점은 " + grade + "입니다.");
boolean pass = true;
System.out.println("시험 합격 여부: " + pass);
double d = 3.14123456789;
float f = 3.14123456789F;
System.out.println(d);
System.out.println(f);
long l = 1000000000000L; /* 1_000_000_000_000L 언더바로 보기 쉽게 표기 가능 */
System.out.println(l);
}
}
코낄님, 배송이 시작됩니다. 15시에 방문 예정입니다.
코낄님, 배송이 완료되었습니다.
자바님의 평균 점수는 90.5점 입니다.
학점은 A입니다.
시험 합격 여부: true
3.14123456789
3.14123456
1000000000000
참고.
자바에서 double 과 float 는 모두 실수를 저장하는 자료형이지만 크기, 정밀도, 그리고 사용 목적에 차이가 있다.
float: 32비트 (4바이트) , 유효 자릿수 약 7자리. 메모리 사용이 중요하고 상대적으로 정밀도가 덜 중요할 때.
>> 변수 선언 시, float f = 3.14f ; 혹은 3.14F ; 로 선언해주어야 한다.
double: 64비트 (8바이트) , 유효 자릿수 약 15자리. 메모리 사용이 덜 중요하고 상대적으로 정밀도가 중요할 때.
long: 64비트(8바이트)의 크기를 가짐.
int는 -21억~21억까지의 정수를 표현할 수 있다. 따라서 해당 숫자보다 더 큰 정수 값을 다루어야 할 때 long 을 사용한다. 숫자 뒤에 L 또는 l 을 붙인다.
변수 이름 짓는 법
1. 저장할 값에 어울리는 이름
2. 밑줄(_), 문자(abc), 숫자(123) 사용 가능 ( 공백 사용 불가 )
3. 밑줄 또는 문자로 시작 가능
4. 한 단어 또는 2개 이상 단어의 연속
5. 소문자로 시작, 각 단어의 시작 글자는 대문자 (첫 단어는 제외)
6. 예약어 사용불가 (public, static, void, int, double, float, ... )
7. 프로그램의 흐름을 위해 사용되는 경우 등 변수명이 크게 중요하지 않을 때는 i , str 등 약어를 사용할 수 있다.
package chap_01;
public class VariableNaming {
public static void main(String[] args) {
// 입국 신고서 (여행)
String nationality = "대한민국"; // 국적
String firstName = "현성"; // 이름
String lastName = "김"; // 현성
String dateOfBirth = "2001-12-31"; // 생년월일
String residentialAddress = "뫄뫄호텔"; // 체류지
String purposeOfVisit = "관광"; // 입국목적
String _flightNo = "KE456" // 항공 편명, 밑줄로 시작해보기
String flight_no_2 = "KE123";
int accompany = 2; // 동반 가족 수
int lengthOfStay = 5; // 체류 기간
String item1 = "시계";
String item2 = "가방";
// String 2item = "신발"; // 숫자로 먼저 시작하는 변수명은 오류남
}
}
package chap_01;
public class _Quiz_01 {
public static void main(String[] args) {
String busNumber = "강동05";
int leftMinutes = 4;
double leftDistance = 1.2;
System.out.println(busNumber + "번 버스");
System.out.println("약 " +leftMinutes+"분 후 도착");
System.out.println("남은 거리 " + leftDistance + "km");
}
}
강동05번 버스
약 4분 후 도착
남은 거리 1.2km
5. 상수
상수(Constant)는 프로그램 실행 동안 변경되지 않는 값을 의미합니다. (상수명은 대문자로)
final 키워드를 사용하면 그 변수는 한 번 초기화된 후 더 이상 값을 변경할 수 없습니다.
// 절대 변하지 않는 상수는 대문자로!!
final String CODE = "KR";
// CODE = "KO"; // 컴파일 오류 발생
String KR_COUNTRY_CODE = "+82"; // 국가 번호
KR_COUNTRY_CODE = "+8282";
System.out.println(KR_COUNTRY_CODE);
+8282
final String KR_COUNTRY_CODE = "+82"; // 국가 번호
// KR_COUNTRY_CODE = "+8282"; // 에러
System.out.println(KR_COUNTRY_CODE);
+82
6. 형 변환
score = 93 + 98.8 ; 자료형이 안맞아서 오류
자바에서 형변환(Casting)이란 하나의 데이터 타입을 다른 데이터 타입으로 변환하는 과정을 말합니다.
형변환은 크게 두 가지 종류가 있습니다. 자동 형변환(Implicit Casting)과 강제 형변환(Explicit Casting)입니다.
int -> long -> float -> double (더 커지는 쪽으로는 자동 형변환)
double -> float -> long -> int (데이터 타입이 더 큰 쪽에서 작은 쪽으로는 강제 형변환. 데이터 손실이 있을 수 있음)
package chap_01;
public class _07_TypeCasting {
public static void main(String[] args) {
// 형변환 TypeCasting
// int to float, double
int score = 93;
System.out.println(score); // 93
System.out.println((float) score); // 93.0
System.out.println((double) score); // 93.0
// float, double to int
float score_f = 93.3f;
double score_d = 98.8;
System.out.println((int) score_f); // 93
System.out.println((int) score_d); // 98
// 정수 + 실수 연산
// score = 93 + 98.8 ; 자료형이 안맞아서 오류
score = 93 + (int) 98.8 ; // 93 + 98
System.out.println(score);
score_d = 93 + 98.8;
// score_d = (double) 93 + 98.8;
// 이미 실수로 선언된 변수에 정수 + 실수를 하면 정수가 알아서 실수 형태로 들어간다.
// int -> long -> float -> double (더 커지는 쪽으로는 자동 형변환)
System.out.println(score_d); // 191.8
// 변수에 형 변환된 데이터 집어넣기
double convertedScoreDouble = score; // 191 -> 191.0
//int convertedScoreInt = score_d;
// 191.8 -> 191 더 작은 쪽으로 가야하기 때문에 오류
// double -> float -> long -> int (수동 형변환)
int convertedScoreInt = (int) score_d; // 191
🔸 숫자를 문자열로
✅ 방법1. String 클래스가 제공해주는 valueOf 메서드를 사용하여 다양한 데이터 타입을 문자로 변경
String s1 = String.valueOf(93); // 93 (문자형)
✅ 방법2. Integer 클래스의 toString 메서드를 사용하여 '정수'를 문자열로 변환
s1 = Integer.toString(93); // 93 (문자형)
String s2 = String.valueOf(98.8); // 98.8 (문자형)
s2 = Double.toString(98.8); // 98.8 (문자형)
🔸 문자열을 숫자로
int i = Integer.parseInt("93"); // 93
double d = Double.parseDouble("98"); // 98.0
// int error = Integer.parseInt("자바");
// 숫자로 형변환 불가능한 데이터는 오류 발생