loading

새소식

Langauge/Java

[Java] Java 기본 개념 및 변수 + 연습문제

  • -
728x90
반응형

Java

 

 ▶ 프로젝트 구성 방식

1. 단일(Monolothic) 구성

    - Tomcat만 사용

    - JSP 파일 내에 자바코드와 HTML/CSS/JS 포함

2. 분산(Distributed) 구성 → MSA(Micro Service Architecture)

    - Live Server + Tomcat 사용

    - JSP 파일 내에 자바코드와 HTML/CSS/JS 포함

      + 자바코드를 제외한 HTML/CSS/JS 코드

 

▶ 실행문과 세미콜론

- 변수 선언, 값 저장, 메소드 호출 등의 코드

- 실행문 끝에는 반드시 세미콜론(;)을 붙여 실행문의 끝 표시

 

▶ 주석 (단축키 : Ctrl + /)

행단위 : //        //

블록단위 : /*   */

문서화 : /**   */

 

▶ 변수 (Variable)

- 값을 저장할 수 있는 메모리상의 공간

- 변수의 값은 변경될 수 있으며, 단 하나의 값만을 저장

- 객체의 상태를 나타내는 속성

- 선언 방법 : 타입 + 변수이름(ex =>   int age;  double value;)

 // 변수 선언 및 사용 1 //
 
 public class Variable1 {
    public static void main(String[] args) {
        int a = 10;
        System.out.println("a의 값은? " + a);
        int b = 11;
        System.out.println("b의 값은? " + b);
        // a의 값에 b를 입력
        // 기존 a의 값인 10은 사라짐
        a = b;
        System.out.println("a의 값은? " + a);
    }
}
// 변수 선언 및 사용 2 //

public class Variable1 {
    public static void main(String[] args) {
        boolean isFile = false; // 논리
        char ch = 'A'; // 문자
        // 숫자 (정수)
        byte bt = 10;
        short count = 100;
        int age = 3000;
        long ms = 20000;
        // 숫자 (실수)
        float avg = 99.99f;
        double pro = 1234.12312313d;
        // 특수문자
        int abc$;
        int $abc;
        int abc_;
        int _abc;

    }
}

 

- 기본 자료형 (Primitive Type) : 정수, 실수,  문자, 논리 값을 저장하는 자료

▶ 형변환(Casting)

- 값의 타입을 다른 타입으로 변환

- 기본 자료형 : boolean을 제외한 나머지 7개 서로 형변환 가능

- 참조 자료형 : 같은 타입(상속) 인 경우 형변환 가능

// 형변환 예제 //

public class First {
    public static void main(String[] args) {
        System.out.println((int) ('A')); // 65
        System.out.println((short) ('a')); // 97
        System.out.println((char) (95)); // _
        System.out.println((int) (1.414)); // 1
        System.out.println((float) (10)); // 10.0
        long num1 = 100L;
        int num2 = (int) num1; // 강제 형변환
        System.out.println(num2);
        int num3 = 100;
        float num4 = 2.2f;
        System.out.println((num3 * num4)); // 자동 형변환
        double sum = 15.1 + (double) 10; // 의도적인 표시
        System.out.println(sum);

    }
}

 

 

 

외부 파일 소스 출력 ( ※ InputStream : 타입의 이름을 읽어주는 함수)

import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;


public class First {
	public static void main(String[] args) throws IOException {
		InputStream is = new FileInputStream("외부파일 경로");
		InputStreamReader isr = new InputStreamReader(is);
		BufferedReader reader = new BufferedReader(isr);
		String data = reader.readLine();
		System.out.println(data);
		
		while(true) {
			data = reader.readLine();
			if(data == null) break;
			System.out.println(data);
		}

	}
}

 

▶ Eclipse 에서 Tomcat - JSP 로 페이지 읽는 서버 구현하기

 

// Server.jsp // 

<%@ page language="java" contentType="text/html; charset=EUC-KR"
    pageEncoding="EUC-KR"%>

<title>title</title>
<%
String nowPage = request.getParameter("page") == null ? "1" : request.getParameter("page");
out.println(nowPage);

int numPage = Integer.parseInt(nowPage);

int startPage = numPage / 10 * 10 +1;
int endPage = startPage + 9;
out.println(startPage);
out.println(endPage);
System.out.printf("시작페이지 : %s", startPage);

for (int i = startPage;i <= endPage; i++) {
	out.println(
		"<a href=''>" + i +"</a>");
}

%>

 

 

 

◆ 연습문제 1. 결과와 같이 출력될 수 있도록 코드 작성하기

public class Practice01 {
	public static void main(String[] args) {
		int a = 1, b = 2, c = 3, d = 4, e= 5;
		System.out.println("1 + 2 + 3 의 연산 결과는 \'" + (a+b+c) + "\' 입니다.\n");
		System.out.println("1 + 2 + 3 의 연산 결과는 \"" +(a+b+c) +"\" 입니다. ");
		System.out.println("1 ~ 5 까지의 곱셈 결과는 " +(a*b*c*d*e) + " 입니다.");

	}

}

 

 

 

◆ 연습문제 2. 결과와 같이 출력될 수 있도록 코드 작성하기

public class Practice02 {
	public static void main(String[] args) {
		boolean a =false;
		char b = 'a';
		int c = 20;
		long d = 2147483648L;
		float e = 3.14f;
		double f = 1.0;
		
	}
}

 

 

◆ 연습문제 3. 결과와 같이 출력될 수 있도록 코드 작성하기

public class Practice03 {
	public static void main(String[] args) {
        int 소프트웨어설계 = 77;
        int 소프트웨어개발 = 50;
        int 데이터베이스구축 = 61;
        int 프로그래밍언어활용 = 69;
        int 정보시스템구축 = 45;
        int 점수 = 소프트웨어설계 + 소프트웨어개발 +
                데이터베이스구축 + 프로그래밍언어활용 + 정보시스템구축;
        
        double 평균 = (double) 점수 / 5;
        System.out.println("정보처리기사 필기시험 결과");
        System.out.printf("점수 : %s, 평균 : %s", 점수, 평균);
		
	}
}

 

 

◆ 연습문제 4. 결과와 같이 출력될 수 있도록 코드 작성하기

 

public class Practice04 {
	public static void main(String[] args) {
		char first = 'A';
		char second = 'a';
		boolean  result = first > second;
		System.out.printf("A 가 a 보다 ASCII 값이 더 크다 => %s\n", result);
	}
}

 

 

◆ 연습문제 5. 결과와 같이 출력될 수 있도록 코드 작성하기

public class Practice05 {
	public static void main(String[] args) {
		int number = 77;
		int ten = number / 10;
		int one = number % 10;
		boolean isMatch = ten == one;
		System.out.printf("십의 자리와 일의 자리 숫자가 같다 : %s", isMatch);
	}
}

 

 

◆ 연습문제 6. 제시된 num의 각 자리 숫자 합 구하기

public class Practice06 {
	public static void main(String[] args) {
		int num = 12345;
		int num1 = num / 10000;
		int num2 = (num / 1000) % 10;
		int num3 = (num / 100) % 10;
		int num4 = (num / 10) % 10;
		int num5 = num % 10;
		int total = num1 + num2 + num3 + num4 + num5;
		System.out.println("각 자리 숫자의 합 : " + total);
	}
}

 

 

◆ 연습문제 7. 입력된 값에 따라 짝수 또는 홀수 출력하기

public class Practice07 {
	public static void main(String[] args) {
		int num = 10;
		System.out.println((num%2==0) ? "짝수" : "홀수");
	}
}

 

 

◆ 연습문제 8. 대문자를 소문자로 변경하기

public class Practice08 {
	public static void main(String[] args) {
		char ch = 'A';
		char lowerCase = (ch >= 'A' && ch <= 'Z') ? ((char)(ch + 32)) : ch;
		System.out.println("입력된 문자 : " + ch);
		System.out.println("소문자로 변경된 문자 : " + lowerCase);

	}
}
728x90
반응형
Contents

📝 포스팅 주소를 복사했습니다 📝

이 글이 도움이 되었다면 공감 부탁드립니다👍