Java/기초 튜토리얼

1. 변수관련 상식

-자바에서는 변수를 초기화를 하지 않으면 사용할 수 없다(안드로이드는 가능)

-정수 변수만 하더라도 short, int, long으로 다양하다

-정수안에 실수를 넣게 되면 정수부분만 저장이 된다.

[Tutorial2]에 이어서, 


(1) 메인클래스 메인함수안에  int a= 0.5;를 넣어본다. 오류가 난다 -> int a = (int)0.5; 으로 형변환 시켜서 대입하고 이상태로 출력해본다. -> 정수부분인 0만  출력된다. 

즉, 소수점 뒷부분은 제거되고 저장된다.

(2. 이러한 정수부분만 저장되는 특징을 이용해서 -> 실수값의 반올림에 사용한다.

(3) 실수값에 0.5를 더한 뒤, 정수형으로 형변환한다. 만약 실수값이 0.5이상이라면 0.5가 더해져서 정수부분이 1만큼 올랐을 것이다. 

즉, 반올림한 값 = (int) (실수 + 0.5);


double b = 0.4;


int a = (int) (b+0.5);

System.out.println(a);



2. 자료형 : 나에게 필요한 데이터 타입을 말한다. [프로젝트명 : Tutorial3]


자료형은 원시형과 비원시형이 있다. 원시자료형 같은 경우, java에서 기본적으로 사용되고 있는 boolean, char, byte, short, int, long 등 이 있다.

비원시 자료형인 같은 경우, 원시자료형을 묶어서 만든 것이며, 단독의 자료형처럼도 많이 쓰인다.

다른 프로그래밍 언어에도 이미 존재하는 자료형이 많다. 하나의 문자를 의미하는 char형 외에, byte short, int long, float, double 모두 겹친다

c언어와 차이점은, boolean형과 String형 정도이다. 특히, String형은 내부적으로 substring 등의 함수를 제공하여 활용도가 높다.


(1) double형을 이용해서 평균을 구하는 실습을 해보자. 프로젝트를 만들고, src에서 우클릭하여 class를 소스코드를 만들고 메인매쏘드를 자동으로 추가해준다.

double a = 10.3;

double b = 9.6;

double c = 10.1;

System.out.println( (a+b+c)/3);


(2) 아스키코드 기반의 char형을 사용해 a부터 z까지 출력해보자. 간단한 반복문이 등장한다. 

char형 변수를 i++로 1씩 더해가면, 아스키코드 기반으로 컴퓨터 내부적으로 a->b->c 순서대로 대입된다. 

이때 문자는 케릭터형에 문자를 대입할때는 '   ' 를 통해서 대입한다.


for(char i = 'a'; i <= 'z'; i++) {

System.out.print(i + " ");

}


(3) 10진수를 8진수나 16진수로 바꾸어 출력해보자. 

8진수로 출력하려면, println대신 format으로 출력하고, 내용에 있어서 10진수를 8진수로 문자열상에서 바꿔주는 [형식지정자 %o ]를 넣어준다. 그리고 뒤에 콤마를 찍어 %o자리에 들어갈 10진수 변수를 넣어준다. format같은 경우,  한칸내리는 기능이 없기 때문에 문자열에 \n도 붙혀준다.  

마찬가지로, 16진수는 형식지정자 [%x]를 사용해서 출력해준다.

int a = 200;

System.out.println("10진수 : "+a);

System.out.format("8진수 : %o \n", a);

System.out.format("16진수 : %x \n", a);


(4) String이라는 내부적으로 class에 의해 구현되어있다. 그 클래스 안에 포함된 substring함수를 활용해보자. 

아래 문장을 출력하면 Daisy와 isy가 출력된다. Stirng의 변수.를 이용해서 substring을 호출하는데,


첫번째 숫자는 시작할 문자 선택이다. Daisy에서, D가 0번째이고, a가 1번째, i가 2번째 ... 이렇게 나간다 d부터 0을 대입해 세면 된다.

두번째 숫자는 몇번째 자리까지 출력할 것인지 선택이다. 햇깔리게도, d가 1번째로 시작한다. a가 2번째자리, i가 3번째자리

[ 즉, substring에서 0부터 세서 시작문자를 선택하고, 1부터 세서 끝날 문자를 선택하면 된다. ]

String name = "Daisy";

System.out.println(name);

System.out.println(name.substring(2, 5));



변수와 상수의 차이점 알기

변수 : 언제든지 저장값이 변경될 수 있는 공간 vs 상수 : 한 번 정해지면 값을 변경할 필요가 없는 데이터(ex> 원주율)


1. 새로운 자바프로젝트를 만들고, 메인클래스를 만들면서 메인함수를 자동생성해준다.


2. 여러 타입의 '변수를 선언'하고, 그안에 어떠한 값을 넣어서 '초기화' 해준다.

(1) 변수형태인 int(정수형)와 변수 intType이라고 짓고, 100이라는 값을 넣어준다.

(2) 실수형 double의 변수를 짓고 150.5라는 값을 넣어준다.

(3) 문자형 String의 변수를 짓고, 큰따옴표를 통해 문자를 구분해서 넣어준다.

int intType = 100;

double doubleType = 150.5;

String stringType = "조재성";

(4) System.out.println을 통해 각 변수들을 출력해본다.


3. final 키워드를 이용해서 상수를 정의하고 사용해보자.

(1)Main 클래스 속 Main함수 바깥에 실수형 상수 final static double PI = 3.141592; 를 선언하여 초기화한다.(상수는 실행시 시작하는 Main함수 바깥에 정의해줌)

final static double PI = 3.141592;

(2) 여기서 final은 '한번 선언되면 바뀌지 않는 상수' , static은 '<하나의 클래스 내>에서 공유하는 자원들'을 의미한다.

(3) 메인함수안에 int r=30;을 변수선언후 초기화 해준다.

(4) 출력함수에 r*r*PI를 통해 반지름이 30인 원의 넓이를 출력해준다.

int r = 30;

System.out.println(r*r*PI);


4. 오버플로의 개념 :  변수들은 그 범위가 정해져있다.

(1) 메인함수 밖에 정수형 상수를 선언하여 초기화해준다. 초기화값으로는 2147483647이라는 int형 자료형이 가질수 있는 최대값을 넣어준다.

final static int INT_MAX = 2147483647;

(2) 메인함수 안에서 int형 변수에다가 위에서 만든 INT_MAX라는 상수를 넣고 출력해본다.

(3) 거기다가 +1을 해서 출력해본다.( +1된 값이 아닌, 오버플로에 의해, 최저값이 출력된다. 순환적인 모습을 보인다.)


5. 사칙연산 프로그램을 작성해보자.

(1) 메인함수 안에다가  아래 문장을 작성해서 "문자열" + (실제연산하여 도출될 값)을 출력해준다.

int a = 1;

int b = 2;

System.out.println("a + b = " +(a+b) );

(2) 곱하기 나누기도 그대로 적용해본다. *나누기는 '몫'만 출력된다.

국내 대부분 통합 프로젝트가 자바로 구현될 만큼 주력언어이며, 웹에서는 jsp, 모바일에서는 안드로이드가 높은 점유율을 가지고 있다.

c언어와 마찬가지로 운영체제를 가리지 않고 실행되며, c++과 함께 대표적인 객체 지향 프로그래밍 언어다.

이클립스는 넷빈즈와 함께 자바 개발에 가장 많이 사용되는 통합 개발 환경이다.


1. 자바를 관리하는 oracle사에 접속해서 자신의 운영체제에 맞는 자바 개발 킷(JDK)을 다운 받어 설치

*제어판>시스템 및 보안 > 시스템에 들어가서 몇 비트인지 확인한다. 단축키(Win+Pause Break)


2. 환경변수 설정 : 컴파일 과정에서 필요한 javac는, 환경변수를 설정해야만 cmd에서 정상 작동한다.


(1) 설치된 경로의 jdk폴더의 bin폴더까지의 경로를 복사한다. bin폴더안에 javac가 위치해있다.


(2) 제어판>시스템>고급 시스템 설정 > 고급탭> 환경변수> 시스템변수(s) - Path (더블클릭) > 새로 만들기 > 복사한 경로 복붙 후 확인

 예 : C:\Program Files\Java\jdk1.8.0_144\bin


(3) 제어판>시스템>고급 시스템 설정 > 고급탭> 환경변수> 시스템변수(s) - 새로만들기 > 

    변수 이름 : JAVA_HOME / 변수 값 : C:\Program Files\Java\jdk1.8.0_144(jdk폴더경로까지만) 


(4)정상 설치 확인을 위해 cmd를 실행하여 javac를 입력해, 명령어 집합이 나오는지 확인해본다.


3. 이클립스 설치 : 자바개발시 효율적인 개발이 가능하게 해주는 개발 환경

(1) 구글에서 Eclipse 를 검색하여 공식홈페이지에서 최신버전을 받아 설치한다( 나같은 경우 OXYGEN 버전이 2018년 1월 24일 최신버전이다)

(2) 설치화면시 가장 위에 있는 for Java Developers (자바 개발자버젼)을 설치한다. 설치경로는 default상태 그대로 진행하고, workspace는 편한 경로를 지정해준다.


4. Package Explorer 속에서 우클릭해서 새로운 자바 프로젝트를 만들어준다.(Tutorial1)

(1) 프로젝트를 우클릭해서 class를 만들고, 이름은 Main으로 만든다(일반적으로 첫번째로 시작되는 클래스를 Main클래스라고 함)

(2) 자동으로 메인함수를 만들어줄 것인지 물어보는 항목을 체크해준다(public static void main(String[] args 체크)

(3) 메인함수 안에다가 System.out.println("Hello World!"); 를 넣은 뒤 메뉴에 보이는 실행버튼을 눌러서 헬로우 월드를 출력해보자.

+ Recent posts