48일차_JAVA

서창민·2023년 5월 18일
0

JAVA

목록 보기
2/21
post-thumbnail

23.05.18 목 48일차

JAVA

  • 특징
1. 모든 운영체제에서 실행 가능
2. 객체 지향 프로그래밍
3. 메모리 자동 정리
4. 무료 라이브러리 풍부

  • 프로그래밍 언어
컴파일 
: 상위 언어 > 하위언어로 번역( EX 사람 말 > 컴퓨터언어)

클래스에서 사용가능한 3가지
1. 필드 
: 값을 정의 하는 것(클래스 내부 또는 메소드내부에서 작성)

2. 생성자 
: 클래스와 이름이 동일해야한다. 
: 리턴형이 없다.
: 값을 초기화 하기 위해서 사용
ex) HelloWorld (int K){
		System.out.println("HelloWorld!!")
        }
3. 메소드  

  • 이클립스
package ch01; // 패키지명

// 접근 제어자( 클래스의 이름은 대문자로)
public class Hello {
	// 메소드 이름(public static) , 리턴 형(void) main(매개변수)
	public static void main(String[] args) {

		// println과 print의 차이는 줄바꿈의 존재
		System.out.println("Hello!!");		
		System.out.print("world!!");
	
    	// 데이터 형을 미리 선언 해줘야 한다.
		int x = 1; 	int y=2;
		int result = x + y;
		System.out.println(result); // 3
    
    	// 문자열을 연결 = +를 사용
    	int h = 3;
		int m = 5;
		System.out.println(h+"시간"+m+"분");	
  • 기본 동작 확인
package ch01;
public class Hello {
	public static void main(String[] args) {

		-------------------------------------------------------------------------

		// 문자열과 함께 프린트
		int h = 3;
		int m = 5;
		System.out.println(h+"시간"+m+"분"); // 3시간5분
		int t = h * 60 + m;
		System.out.println("총"+t+"분");//총185분
	
    	int x = 3; int y = 5;
		System.out.println(x + "," + y); // 3,5
		
		// 임시 공간 사용하여 값 변경
		int temp = x; // 3
		x = y; // 5
		y = temp; // 3
		System.out.print(x + "," + y); // 5,3
        
        // char형은 작은 따옴표의 하나의 문자만 사용 가능
		char var1='A';
		char var2="A"; // 오류
		char var3='AAA'; // 오류
        
        
		int a = 3, b =5;
		// long 에서 세자리수 int 범위 값을 넘어갈 시 l(엘)또는 L 을 마지막에 추가해야한다.
		long z = 99999;
		long l = 99999999999L;
		
        // char는 작은 따옴표의 하나의 문자만 사용 가능
		char var1='A';
		System.out.println(a+","+b+","+z+","+l+","+var1); // 3,5,99999,99999999999,A

		-------------------------------------------------------------------------

        // 클래스는 맨 첫글자를 대문자로 표기
		String var2 = "우리나라";
		String str = a+","+b+","+z+","+var1 + "," + var2;
		System.out.println(str);// 3,5,99999,99999999999,A,우리나라
        
        // 문자의 문자형과 정수형
		char var1='A';// 문자타입
		char c2 = 65; // 정수형 A
		char c3 = 44032; // 정수형 가
		char c4 = 44033; // 정수형 각
        
		-------------------------------------------------------------------------

        // 자동 형변환
        
        //double 이 float보다 큰 범위 (큰범위에서 작은 범위로 값을 넣을 수없다)
        float f0 = 100.5; // error > defalut는 double 형
		float f01 = (float)100.5; // 100.5 강제 형변환
		float f1 = 100; // 정수를 실수로 형변환
		float f2 = 100.5f; // 실수형 f 표기(float형 표기방법)
		double d1 = 200.5; // double은 d표기 미필요(디폴트 값으로 잡힘)
		double d2 = 200.5d; // 표기해도 정상 출력
        //double 이 float보다 큰 범위 (큰범위에서 작은 범위로 값을 넣을 수없다)

		-------------------------------------------------------------------------

        // 형변환 종류
		int k = 100;
		long l = 200L;
		
		k = (int) l; // l의 형을 int로 변경 (강제 형변환)
		
		System.out.println(k); // 200
		
		l = k; // (자동 형 변환, 묵시적 형 변환)

		-------------------------------------------------------------------------

        // _ 를 이용한 가독성 표기
		int k = 1_000_000;
		System.out.println(k * 2); //2000000

		-------------------------------------------------------------------------

		// 부동 소수점 표기법
		float var1 = 3E6F;
		System.out.println(var1); //3000000.0
		
		float var2 = 3e6F;
		System.out.println(var2); //3000000.0

		-------------------------------------------------------------------------

        // 논리타입 ( 참/ 거짓)
		boolean f = false; // true ,false
		
		if (f) {
			System.out.println("참");
		}else {
			System.out.println("거짓");
		}
        
        // 논리타입 2 (참/ 거짓
        int k = 10;
		float j = 10.0f;
        // 같다 == , 다르다 !=
		if (k==j) { 
			System.out.println("참");
		}else {
			System.out.println("거짓");
		}
        
		-------------------------------------------------------------------------

        // 이스케이프문자
		System.out.println("참\t확인"); // Tap 동작
		System.out.println("----------------"); 
		System.out.println("줄바꿈\r확인"); // 줄바꿈 동작

		-------------------------------------------------------------------------

		// 연산에서의 타입변환
		int k =10;
		String s =  "우리";
		double d = 10.5;
		
		// 문자열 + 숫자 = 문자열
		System.out.println(s + k); // 우리10
		// 숫자 + 문자열 = 문자열
		System.out.println(k + s); // 10우리
		// 실수 + 정수 =실수 
		System.out.println(d + k); // 10우리우리
 		
		-------------------------------------------------------------------------
        
        // 문자열을 기본 타입으로 변환
		String i1 =  "100";
		String i2 =  "200";
		String i3 = "200.5";
		// 문자형 출력
		System.out.println(i1 + i2); // 100200
		// 문자열을 정수형 변환 후 출력
		int result = Integer.parseInt(i1)+Integer.parseInt(i2);
		System.out.println("결과값:" + result); // 결과값: 300
		
		// 문자열을 실수형 변환 후 출력
		double result2 = Integer.parseInt(i1)+Double.parseDouble(i3);
		System.out.println("결과값:" + result2); // 결과값: 300.5
		
		// 숫자를 문자형으로 변환 후 출력
		int k = 200;
		int j = 300;
		String str = String.valueOf(k) + String.valueOf(j);
		System.out.println("결과값:" + str); // 결과값: 300
		
		-------------------------------------------------------------------------

		// 전역변수
		int k1 = 10;
		// 전역에서 지역변수를 선언 하면 다른 지역에서 사용 가능
		int k2;
		if (true) {
			// 지역변수
			k2 = 20;
			System.out.println(k1+k2);			
		}
		if (true) {
			System.out.println(k1+k2);
		}

		-------------------------------------------------------------------------
		
		// 포맷사용하기 %s 문자열, %f 실수형, %d 정수형 
		System.out.printf("번호 : %f, 이름 : %s, %d", 3.1415, "둘리", 13);


	}       
}

  • Scanner
scanner.nextLine(); 
: 엔터를 치면 입력값을 불러온다.
// 스캐너 클래스 사용선언
import java.util.Scanner;

		//Scanner 타입 변수 사용
		Scanner scanner = new Scanner(System.in);
		System.out.println("값을 입력해주세요:"); // 값을 입력해 주세요:
		String str = scanner.nextLine();
		System.out.println("입력값:"+str); // 입력값:구름
		scanner.close();
        
		-------------------------------------------------------------------------
        
		//Scanner 타입 변수 사용
		Scanner scanner = new Scanner(System.in);
		System.out.println("X 값 입력:"); // X 값 입력: 
		String str = scanner.nextLine(); // 1
		
		System.out.println("Y 값 입력:"); // Y 값 입력:
		String str2 = scanner.nextLine();// 2
		Double result = Double.parseDouble(str) + Double.parseDouble(str2);
		System.out.println("결과값:"+result); // 결과값 : 3.0
		scanner.close();
        		//Scanner 타입 변수 사용
		Scanner scanner = new Scanner(System.in);
		System.out.println("X 값 입력:"); // X 값 입력: 
		String str = scanner.nextLine(); // 1
		
		System.out.println("Y 값 입력:"); // Y 값 입력:
		String str2 = scanner.nextLine();// 2
		Double result = Double.parseDouble(str) + Double.parseDouble(str2);
		System.out.println("결과값:"+result); // 결과값 : 3.0
		scanner.close();
        
  • 느낀점
오늘은 자바의 기본내용을 사용해보는 시간을 가졌다.
파이썬과 다르게 변수의 데이터 형을 필수로 기입해주어야하고,
세미콜론 또한 붙여주어야했다.
들여쓰기 대신 중괄호를 사용할수 있다. 
또 기본적인 연산기호화, 출력을 위한 함수들의 개념을 배웠다.
파이썬과 사용하는 구문이 다르지만 형식은 비슷하기에
이또한 숙지하고 사용성을 높이도록 해야겠다.
정보처리 기사 시험이 이번주다! 
필기 꼭 붙자! 
profile
Back-end Developer Preparation Students

0개의 댓글