프로그래밍/Java

나도코딩 - 자바 코딩 무료 강의(기본편) - chap_01

건팔구 2024. 10. 7. 21:43

chap_01

1. Hello world

package chap_01;

public class _01_HelloWorld {
	public static void main (String[] args) {
		System.out.println("Hello World!!!");
	}
}

 

2. 자료형

package chap_01;

public class _02_DataTypes {
	public static void main(String[] args) {
		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. 변수

package chap_01;

public class _03_Variable {
	public static void main(String[] args) {
		String name = "나도코딩";
		int hour = 15;
		
		
		System.out.println(name + "님, 배송이 시작됩니다. " + hour + "시에 방문 예정입니다.");
		System.out.println(name + "님, 배송이 완료되었습니다.");
		
		
		double score = 90.5;
		char grade = 'A';
		System.out.println(name + "님의 평균 점수는 " + score + "점입니다.");
		System.out.println("학점은 "+ grade +  " 입니다.");
		
		boolean pass = true;
		System.out.println("이번 시험에 합격했을까요? " + pass);
		
		double d = 3.14123456789;
		float f = 3.14123456789F; //실수를 float 변수에 넣고 싶으면 끝에 F 또는 f를 넣어줘야 한다.
		System.out.println(d); // 정밀한 소수를 계산하고 싶은경우 double을 사용한다.
		System.out.println(f);
		
		long l = 100000000000L; // int 보다 큰 범위인 long을 표현하기 위해 끝에 L 또는 l을 넣어준다.
		l =  100_000_000_000L;
		System.out.println(l);
		
	}


}

 

정수

정의 : 소수점을 사용하지 않고 숫자를 표현한 것이다.

정수를 표현하기 위해서 int와 long을 사용한다.

 

int와 long의 차이

int 
  • 32bit(=4byte)
  • 범위 : -2147483648 ~ 2147483647
long
  • 64bit(=8byte)
  • 범위 : -9223372036854775808 ~ 9223372036854775807
  • int형에 비해 많은 메모리를 필요로 하고 속도도 느림

int보다 큰 범위의 값을 표현해주기 위해 long을 사용한다.

 

실수

정의 : 소수점을 사용하여 숫자를 표현한 것이다.

실수를 표현하기 위해 float와 double을 사용한다.

 

float와 double 차이

float
  • 32bit(=4byte)
  • 범위 : -3.4 * 10^38 ~ 3.4 * 10^38
  • 정밀도 : 7자리
double
  • 64bit(=8byte)
  • 범위 : -1.7 * 10^38 ~ 1.7 * 10^38
  • 정밀도 : 약 15~16자리

정밀한 소수를 계산하고 싶은경우 double을 사용한다.

 

 

문자

char과 String 차이

char
  • 한개의 문자를 표현하고 싶을때 사용한다
String
  • 여러개의 문자를 표현하고 싶을때 사용한다

 

boolean

정의 :  참과 거짓을 의미하는 데이터 타입

 

4. 주석

package chap_01;

public class _04_Comment {
	public static void main(String[] args) {
		System.out.println("(10분 전) 잠시 후 결혼식 시작 예정이오니 착석 부탁드립니다.");
		//System.out.println("(5분 전) 잠시 후 결혼식 시작 예정이오니 착석 부탁드립니다.");
		
		
		int size = 120;
		size = size + 10; // 어린이는 발이 빨리 자라기 때문에 사이즈 10만큼 더 큰 신발을 구매
		System.out.println("신발 사이즈" + size + "으로 보여주세요.");
		
		/*
		int a = 10;
		int b = 20;
		System.out.printlna(a + b); //30
		*/
	}

}

 

한줄 주석 : //으로 시작

여러줄 주석 : */ 시작 해주고 */ 닫아주기

 

5. 변수 이름 짓는법

package chap_01;

public class _05_VariableNaming {
	public static void main(String[] args) {
		// 변수 이름 짓는법
		// 1. 저장할 값에 어울리는 이름
		// 2. 밑줄(_), 문자(abc), 숫자(123) 사용 가능 (공백 사용 불가)
		// 3. 밑줄 또는 문자로 시작 가능
		// 4. 한 단어 또는 2개 이상 단어의 연속
		// 5. 소문자로 시작, 각 단어의 시작 글자는 대문자 (첫 단어는 제외)
		// 6. 예약어 사용 불가 (public, static, void, int, double, float, ...)
		
		// 입국 신고서 (여행)
		String nationality = "대한민국"; // 국적
		String firstname = "현성"; // 이름
		String lastname = "김"; //성
		String dateOfBirth = "2001-12-31"; // 생년월일
	    String residentialAddress = "무슨 호텔"; //체류지
		String purposeOfVisit = "관광"; // 입국목적
		String flightNo = "KE657"; // 항공 편명
		String _flightNo = "KE657"; // 밑줄 시작
		String _flight_no_2 = "KE657"; // 항공 편명
		// String -flightNo = "KE657";
		
		int accompnay = 2; // 동반 가족 수
		int lengthOfStay = 5; // 체류 기간
		
		String item1 = "시계"; 
		String item2 = "가방";
		// String 3items = "전자제품";
		
		// 프로그래므이 흐름을 위해 사용되는 경우 등 (이름이 중요하지 않을 때)
		int i = 0;
		String s = "";
		String str = "";
		
		// 절대 변하지 않는 상수는 대문자로
		final String CODE = "KR"; //final을 붙이면 상수(절대 바꿀수 없다.)
		
	}

}

 

6. 상수

package chap_01;

public class _06_Constants {
	public static void main(String[] args) {
		final String KR_COUNTRY_CODE = "+82"; // 국가 번호 (빨리)
		// KR_COUNTRY_CODE = "+8282";
		 System.out.println(KR_COUNTRY_CODE);
		 
		 final double PI =  3.141592; //원주율
		 final String DATE_OF_BIRTH = "2001-12-31"; // 생년 월일
	}

}

상수 : 절대로 변하지 않는 값

자료형 앞에 final을 붙여서 상수로 만들어 줄수 있다.

 

7. 형변환

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 to 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 + (int) 98.8; // 93 + 98
		System.out.println(score);
		
		score_d = (double) 93 + 98.8; // 93 + 98.8
		System.out.println(score_d);
		
		// 변수에 형변환된 데이터 집어넣기
		double convertedScoreDouble = score; // 191 -> 191.0
		// int -> long -> float -> double (자동 형변환)
		
		int convertedScoreInt = (int) score_d; // 191.8 -> 191
		// double -> float -> long -> int (수동 형변환)
		
		// 숫자를 문자열로
		String s1 = String.valueOf(93);
		s1 = Integer.toString(93);
		System.out.println(s1); //93 
		
		String s2 = String.valueOf(98.8); 
		s2 = Double.toString(98.8);
		System.out.println(s2); // 98.8
		
		// 문자열을 숫자로
		int i = Integer.parseInt("93");
		System.out.println(i); // 93
		double d = Double.parseDouble("98.8"); // 문자열에서 숫자로 바꿀때 ""안에 올바른 데이터가 들어가야한다. ex)숫자 : 93, 98.8
		System.out.println(d);
		
		
	}

}

 

Quiz #1

package chap_01;

public class _Quiz_01 {
	public static void main(String[] args) {
		String busNo = "상암08";
		System.out.println(busNo + " 버스");
		
		int time = 3;
		System.out.println("약 " + time + "분 후 도착");
		
		double distance = 1.2;
		System.out.println("남은 거리 " + distance+"km");
		
	}

}