학습(공부)하는 블로그 :: '분류 전체보기' 카테고리의 글 목록 (245 Page)
 

 

Notice»

Recent Post»

Recent Comment»

Recent Trackback»

02-15 20:35

 

'분류 전체보기'에 해당되는 글 2657

  1. 2013.02.28 15. 클래스 기반의 프로그래밍
  2. 2013.02.27 14. 클래스에 대하여
  3. 2013.02.26 13. 함수에 대하여(2)
  4. 2013.02.25 12. 함수에 대하여(1)
  5. 2013.02.24 11. 변수의 묶음! 배열
  6. 2013.02.23 10. while문, 키보드로부터의 입력
  7. 2013.02.22 9. for문
  8. 2013.02.21 8. switch문
  9. 2013.02.20 7. if문
  10. 2013.02.20 6. 다양한 연산 예제
 
반응형

1. 클래스 기반의 프로그래밍


○ 클래스에도 메인 클래스가 있다.


○ 메인 클래스를 정점으로 관련 클래스들을 가져다가 사용하는 방식으로 클래스 기반의 프로그래밍이 이루어 진다.


○ 클래스와 클래스가 서로 요청을 주고 받으면서 하나의 완성된 자바 프로그램을 만들게 된다.



2. 클래스의 선언

  class 클래스이름
  {
      …
   }


○ 야구선수 클래스 예시

 class BaseballPlayer

 {

      int age, height, weight ;


      public void eat()  {

             System.out.println("먹는다.");

      }

      public void sleep()  {

             System.out.println("잔다.");

      }

      public void run()  {

             System.out.println("달린다.");

      }

 }


- 해설

· 이 클래스는 정수형으로 된 age, height, weight 의 세 가지 변수를 가졌다.

  ※ 클래스에서 사용되는 변수를 '맴버'라고 부름

· eat(), sleep(), run() 의 세 가지 함수를 가졌다.

  ※ 이러한 함수는 클래스 내에 구현된 메소드라고 함

· 이것으로 BaseballPlayer 라는 클래스를 만들었고, 이를 이용해서 새로운 객체를 만들 수 있음

· 클래스를 이용하여 새로운 객체를 만드는 것을 '생성'이라고 함



3. 클래스에서의 객체 생성


○ 객체 생성하는 방법

 클래스이름 객체이름 = new 클래스이름() ;


○ 객체 생성의 예

  BaseballPlayer kim = new BaseballPlayer() ;
  BaseballPlayer min = new BaseballPlayer() ;



4. 생성한 객체 사용하기


○ 특정 클래스에서 구현된 메소드는 해당 클래스로 생성된 객체만이 사용할 수 있다.(해당 객체들은 클래스로부터 모든 권한을 물려받았다고 표현)


○ 메소드 호출

  객체명.메소드 ;


- 예) kim.run() ;


○ 변수의 값 대입

 객체명.변수 = 대입할 값 ;


- 예) kim.age = 30 ;


○ 클래스와 객체의 사용 예시 : object_01.java

 class BaseballPlayer

 {

      int age, height, weight ;


      public void eat()  {

             System.out.println("먹는다.");

      }

      public void sleep()  {

             System.out.println("잔다.");

      }

      public void run()  {

             System.out.println("달린다.");

      }

 }


 class object_01

 {

      public static void main(String args[])

      {

             BaseballPlayer kim = new BaseballPlayer();

             kim.age = 30 ;

             System.out.println("생성한 야구선수 kim의 나이는 : " + kim.age);

             kim.run();

      }

 }


- 실행 결과


※ 위 예제를 두 개의 클래스로 따로 나누고 object_01만 실행시켜도 같은 결과를 가진다.


반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

17. 클래스의 보호  (0) 2013.03.02
16. 생성자  (0) 2013.03.01
14. 클래스에 대하여  (0) 2013.02.27
13. 함수에 대하여(2)  (0) 2013.02.26
12. 함수에 대하여(1)  (0) 2013.02.25
:
반응형

1. 클래스의 정의 및 특징


○ 자바에서 어떤 업무 로직을 수행하게 하는데 있어 필요한 명령들과 함수들을 쓰기 편하도록 모아놓은 것

- 컴퓨터를 조립하기 위해 구입하는 부품 하나하나를 클래스라고 생각하면 됨

- 부품으로 조립한 컴퓨터는 최종 만들어진 자바 프로그램이 된다.


○ 자바에서 클래스는 프로그램을 구현하는 가장 기본 단위이며, 이것들이 모여서 하나의 완성된 자바 프로그램이 만들어 진다.


○ 클래스는 공유가 가능하다.



2. 객체 지향 프로그래밍


○ 객체란 : 우리 주변에 흔히 볼 수 있는 자동차, 컴퓨터, 책상 등 눈에 보이는 모든 것이라고 생각하면 됨


○ 객체 지향 프로그래밍(Object-Oriented Programming)

- 자바에서의 클래스가 이러한 객체의 개념을 가져다 만든 것



3. 객체의 특징


○ 모든 객체는 '상태'와 '동작'이라는 두 가지 속성을 가진다.

- 자동차 객체의 예

상태(값)

동작 

연비 

달린다. 

좌석수 

멈춘다. 

바뀌 수 

전진한다.

 

 


○ 자바에서 클래스는 객체를 흉내내서 만들었기 때문에 객체와 마찬가지로 '상태'와 '동작'이라는 두 가지 속성을 가진다.

- 상태 : 변수로 표현한다.

- 동작 : 함수를 이용해서 표현한다.


반응형
:
반응형

1. main() 함수에 대하여


○ 함수를 만들어 사용하는 이유 : 반복적으로 행해지는 각종 연산을 효율적으로 처리하기 위함


○ main() 함수가 받는 인자

- public static void main(String args[])

· String args[] ☜ 문자형 배열

· void ☜ 자료형, 되돌려 주는 값이 없다.


○ 인자 값을 넘겨받는 main() 함수 : main_01.java

 class main_01

 {

         public static void main(String args[])

         {

                 for(int i=0; i < args.length; i++)

                 {

                         System.out.println(args[i]);

                  }

          }

 }


- 실행 결과


2. 오버로딩


○ 오버로딩 : 이름은 같지만 인자가 다른 함수


○ 함수의 오버로딩 예제 : overloading,java

 class overloading

 {

         public static void main(String args[])

         {

                 System.out.println(max(5, 9, 2));

                 System.out.println(max(3.1, 10.33, -32.1));

          }

          /* 정수형 max() 함수 */

         public static int max(int a, int b, int c)

         {

                int max = 0;


                if(a>b)    {

                              max = a;

                }

                else {

                              max = b;

                }

                if(c>max) {

                              max = c;

                }


                return max;


          }


          /* 실수형 max() 함수 */

         public static double max(double a, double b, double c)

         {

                double max = 0;


                if(a>b)    {

                              max = a;

                }

                else {

                              max = b;

                }

                if(c>max) {

                              max = c;

                }


                return max;

          }
 }


- 실행 결과




반응형
:
반응형

1. 함수에 대하여


○ 함수

-  어떤 데이터 값을 넣어면 안에서 그 데이터 값을 가지고 이런저런 처리를 한 후에 그 결과값을 돌려주는 프로그래밍적 요소

- 흔히 메소드라고도 부를 수 있는데 호출이 되어지면 어떤 업무 처리를 함에 있어서 같기 때문에 그렇다.

- 처음에 넣는 데이터 값을 인수, 인자, 파라메타 등으로 부른다.



2. 함수를 만드는 방법


○ 함수를 만드는 방법

 되돌려주는_자료형 함수이름(받는 인자)
 {
       업무처리
       ……
       return 되돌려줄 값 ;
 }


○ 함수예제 1

 int addOne(int aa)

 {

      int bb = aa +1 ;

      return bb ;

 }


- 설명 : 정수 aa를 받아 1을 더해 리턴값으로 bb를 되돌려 주게된다.



3. 여러가지 함수 예제들


○ 여러 개의 인자를 받는 함수

 double average(int a, int b, int c)
 {
      double avg = (a + b + c) / 3 ;

      return avg ;

 }


- 설명 : 세 개의 정수를 받아 평균을 구해내는 함수

- 주의사항 : 평균은 실수(double)가 된다는 점에 유의


○ 문자열을 되돌려 주는 함수

 String insa(String name)
 {
      String str = name + "씨, 반갑습니다." ;

      return str ;

 }


- 설명 : name이라는 문자변수를 받아서 그 변수와 "씨 반갑습니다."를 리턴값으로 돌려 줌


○ 되돌려 주는 값이 없는 경우의 함수

 viod addOne(int a)
 {
      System.out.println( a ) ;

 }


- 설명 : 되돌려 줘야할 리턴값이 없는 경우에 되돌려줄 자료형에 void 라고 표기한다.

· 위 예제는 정수 a를 받아서 그냥 화면에 출력한다.


○ 받는 인자가 없는 함수

void hello()

 {
      System.out.println("안녕하세요!") ;

 }


- 설명 : 함수를 호출하면 화면에 "안녕하세요!"라는 메시지를 출력한다.



4. 함수가 들어가는 위치


○ 함수의 위치 예제 : function_01.java

 class function_01

 {

       public static void main(String args[])

       {

              // 메인함수 내용

        }

        int addOne(int a)

        {

              int b = a + 1 ;

              return b ;

         }

 }


- main() 함수와 같은 선상에 위치해 놓으면 된다.

- 함수의 실행순서 : main() 함수 ⇒ main() 함수가 호출하는 함수




반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

14. 클래스에 대하여  (0) 2013.02.27
13. 함수에 대하여(2)  (0) 2013.02.26
11. 변수의 묶음! 배열  (0) 2013.02.24
10. while문, 키보드로부터의 입력  (0) 2013.02.23
9. for문  (0) 2013.02.22
:
반응형

1. 변수의 묶음! 배열


○ 배열이 필요한 이유

- 변수의 수가 많을 경우 일일이 선언하기도 힘들고, 또 이를 출력 등의 명령을 줄 때도 변수의 수 만큼 명령문을 써야되기때문에 비율적

- 따라서 이러한 변수의 묶음을 간단하게 처리할 수 있는 방법이 바로 배열



2. 배열의 선언과 대입


○ 배열의 선언

 자료형[] 배열이름 = new 자료형[배열의 크기];
 자로형 배열이름[] = new 자료형[배열의 크기];


- 예시) int num[] = new int[10]; ☜ 정수형 타입으로 num이라는 배열변수 10개를 만든다는 뜻


○ 배열에 값 대입(예시)

 int num[] = new num[5];
 num[0] = 1;
 num[1] = 2;

 num[2] = 3;

 num[3] = 4;

 num[4] = 5;


- 해설

· int num[] = new num[5]; ☜ 정수형 num 배열변수 5개를 선언

· num[0] = 1 ~ num[4] = 5  선언한 num[0]부터 num[4]까지 배열변수에 값을 대입

- 주의사항

· 배열의 시작은 0부터 시작한다.

· 배열의 크기를 초과해서 값을 대입하면 당연히 에러가 난다.


○ 배열의 선언과 대입을 한꺼번에 하는 방법

 자료형 배열이름[] = { 값1, 값2, 값3, …… };


- 참고사항

· 배열의 크기가 작은 경우에 사용하면 효율적이다.

· 크기가 큰 경우는 선언과 대입을 따로 하는 것이 더 효율적이다.


○  배열을 이용한 학생명부 출력 프로그램 : array_01.java

 class array_01

 {

         public static void main(String args[])

         {

               String[] name = new String[5];

               name[0] = "홍길동";

               name[1] = "전우치";

               name[2] = "임꺽정";

               name[3] = "이순신";

               name[4] = "강감찬";


               System.out.println("*** 학생명부 ***");


               for (int i=0; i<5; i++)

               {

                         System.out.println(name[i]);

               }

         }

 }


- 실행 결과


- 참고사항

· 위의 예제를 배열을 사용하지 않고 만들었을 경우 맨 마지막 명령문 System.out.println 명령이 배열의 크기와 같은 5번의 명령문을 입력해야 하는 번거로움이 있다.

· 만약 위 학생의 수가 40명이라면 아마 짜증나겠죠.

· for문에서 배열의 크기를 정확히 알면 제대로된 조건을 만들 수 있지만 배열의 크기를 모를 경우에는 곤란해 진다. 그럴 때 사용하는 것이 다음 예제다.


○ 배열의 크기를 모른다고 가정했을 때 수정 예제 : aray_02.java

 class array_02

 {

         public static void main(String args[])

         {

               String[] name = new String[5];

               name[0] = "홍길동";

               name[1] = "전우치";

               name[2] = "임꺽정";

               name[3] = "이순신";

               name[4] = "강감찬";


               System.out.println("*** 학생명부 ***");


               for (int i=0; i<name.length; i++)

               {

                         System.out.println(name[i]);

               }

         }

 }


- 실행 결과


- 참고사항 : .length 메소드가 배열의 크기를 나타냄



3. 2차원 배열


○ 2차원 배열의 선언

 자료형[][] 배열이름 = new 자료형[크기1][크기2];
 자로형 배열이름[][] = new 자료형[크기1][크기2];


○ 배열에 값 대입(예시)

 int num[][] = new num[2][5];

 num[0][0] = 1;
 num[0][1] = 2;

 num[0][2] = 3;

 num[0][3] = 4;

 num[0][4] = 5;

 num[1][0] = 6;

 num[1][1] = 7;

 num[1][2] = 8;

 num[1][3] = 9;

 num[1][4] = 10;


- 해설

· int num[][] = new num[2][5]; ☜ 정수형 num 2차원배열 변수 10개(2×5)를 선언

· num[0][0] = 1 ~ num[1][4] = 10  선언한 num[0][0]부터 num[1][4]까지 배열변수에 값 대입

- 주의사항

· 배열의 시작은 0부터 시작한다.(헷갈리지 말아야 함)


○ 배열의 선언과 대입을 한꺼번에 하는 방법

 자료형 배열이름[][] = { { 값1, 값2, 값3, …… }, { 값1, 값2, 값3, …… }, …… } ;





반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

13. 함수에 대하여(2)  (0) 2013.02.26
12. 함수에 대하여(1)  (0) 2013.02.25
10. while문, 키보드로부터의 입력  (0) 2013.02.23
9. for문  (0) 2013.02.22
8. switch문  (0) 2013.02.21
:
반응형

10.  while문


○ 사용환경

- while문은 조건이 맞을 때까지 계속 반복해야 하는 경우 사용

- 조건이 영원히 맞지 않을 경우에는 무한루프에 빠짐

- 따라서 무한루프에 빠지지 않도록하는 장치가 필요


○ 사용방법

 while (조건)

 {

     반복할 실행문

 }


○ 기본 적인 예제 : while_01.java

class while_01

{

public static void main(String args[]

{

int a = 0 ;

                while (a < 5)

{

System.out.println("반복합니다.");

}

}

}


- 실행 결과 : 실행하면 무한루프에 빠짐(실행금지)


○ 수정한 while문 : while_02.java

class while_02

{

public static void main(String args[]

{

int a = 0 ;

                while (a < 5)

{

System.out.println("반복합니다.");

                        a++;

}

}

}


- 실행 결과


○ boolean 자료형의 예제 : while_03.java

class while_03

{

public static void main(String args[]

{

int a = 0 ;

                boolean check = true ;


                while (check)

{

System.out.println("반복합니다.");

                        if (a > 5)

                        {

                               check = false ;

                         }

                         else

                         {

                               a = a + 1 ;

                          }

}

}

}


- 실행 결과



2. 키보드로부터의 입력


○ import 명령어 : 다른 프로그램을 불러와 사용하겠다는 명령어


○ 키보드로부터 입력받는 기본 예시 : input_01.java

import java.io.*;


class input_01

{

public static void main(String args[]

{

String str = null;

                System.out.println("이름을 입력하세요!!");


                try {

   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

                   str = br.readLine();

                 } catch (IOException e) {}


                System.out.println(str + " 이시군요..");

}

}


- 실행 결과

- 소스 설명

· import java.io.* ☜ java.io에 있는 모든 메소드를 불러다 쓰겠다는 의미

· String str = null; ☜ str 변수의 초기값은 널 값으로 하겠다는 것 

· try …  } catch (IOException e) {} 

BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); ☜ 사용자가 키보드로 입력한 정보를 입력받겠다는 명령

str = br.readLine(); ☜ br로부터 readLine() 메소드를 사용하여 사용자가 키보드로 입력하는 정보를 한 줄씩 받는 모습(입력받은 정보를 str이라는 변수에 할당)

· 나머지는 차차 배우게 됩니다. ^^






반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

12. 함수에 대하여(1)  (0) 2013.02.25
11. 변수의 묶음! 배열  (0) 2013.02.24
9. for문  (0) 2013.02.22
8. switch문  (0) 2013.02.21
7. if문  (0) 2013.02.20
:
반응형

1. for문


○ 사용환경

- 반복 횟수가 정해져 있는 반복문(while문은 조건이 맞을 때까지 계속 반복해야 하는 경우 사용)


○ 사용방법

 for (초기값; 조건식; 증감값)

 {

     반복할 실행문

 }


○ 기본 적인 예제 : for_01.java

class for_01

{

public static void main(String args[]

{

for (int i=0; i<5; i++)

{

System.out.println((i+1) + "번째 반복합니다.");

}

}

}


- 실행 결과


○ 이중 for문 예제 : for_02.java

class for_02

{

public static void main(String args[]

{

for (int i=2; i<10; i++)

{

for (int j=1; j<10; j++)

                        {

                              System.out.println(i+ "*" + j + "=" + (j*j));

                         }

}

}

}


- 실행 결과



2. {}의 생략


○ 생략가능한 경우

- if문의 경우 : 조건에 따라 실행되는 문장(또는 명령)이 하나인 경우

- for문의 경우 : 반복 명령이 한개인 경우


○ 예시(if문)

- 일반적인 if문

 if ( a > b )
 {
      System.out.println("a > b");

 }

 else

 {
      System.out.println("a <= b");

 }


- 괄호{}를 생략한 경우

 if ( a > b )
      System.out.println("a > b");

 else

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


○ 예시(for문)


- 일반적인 for문

 for (int i=0; i<5; i++)

 {

System.out.println((i+1) + "번째 반복합니다.");

 }


- 괄호{}를 생략한 경우

 for (int i=0; i<5; i++)

System.out.println((i+1) + "번째 반복합니다.");






반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

11. 변수의 묶음! 배열  (0) 2013.02.24
10. while문, 키보드로부터의 입력  (0) 2013.02.23
8. switch문  (0) 2013.02.21
7. if문  (0) 2013.02.20
6. 다양한 연산 예제  (0) 2013.02.20
:
반응형

1. switch문


○ 사용환경

- 비교하는 조건이 여러 개일 때 주로 사용

- 비교조건이 '조건'이 아니라 '값'으로 비교

- break; 문을 만나야 해당 프로세서가 종료된다.(break; 문을 만나지 못하면 그 다음 case 문이 계속 실행된다.)


○ 사용방법

 switch (값)

 {

     case 1 : 실행문

                   break ;

     case 2 : 실행문

                   break ;

     case 3 : 실행문

                   break ;

     …

 }


○ 기본 적인 예제 : switch_test

class switch_test 

{

public static void main(String[] args) 

{

int value = 2 ;

switch (value)

{

case 1 : System.out.println("값은 1입니다.");

                                    break;

case 2 : System.out.println("값은 2입니다.");

                                    break;

case 3 : System.out.println("값은 3입니다.");

case 4 : System.out.println("값은 4입니다.");

                                    break;

}

}

}


- 실행 결과

- 예제 해설

· case 뒤에 나오는 1 ~ 4가 비교하고자 하는 '값'이다.(비교하는 순서가 아님)

· 예제에서 value 값이 2이기 때문에 case 2 뒤의 실행문이 실행되고, break; 문을 만나서 빠져나오게 된다.

· 만약 value 값이 3인 경우라면 case 3 뒤의 실행문이 실행되고, break; 문을 만나지 못했기 때문에 그 아래에 있는 case 4 뒤의 실행문도 함께 실행되고난 뒤에 break; 문을 만나 빠져나오게 된다.(즉 아래와 같이 나온다.)









반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

10. while문, 키보드로부터의 입력  (0) 2013.02.23
9. for문  (0) 2013.02.22
7. if문  (0) 2013.02.20
6. 다양한 연산 예제  (0) 2013.02.20
5. 연산자  (0) 2013.02.19
:
반응형

1. 프로그램을 좌우하는 제어문


○ 제어문의 종류

- 조건문 : 어떤 조건에 따라 분기시키는 제어문(if문, switch문)

- 반복문 : 반복 처리를 수행하는 제어문(for문, while문)


○ 비슷하게 보이지만 제각각 용도와 쓰임새가 조금씩 틀림. 따라서 정확하게 이해할 필요가 있다.


2. if문


○ 사용환경

- 어떤 조건을 이용하여 참(True), 거짓(False)으로 나누어 분기처리하기 위해 사용

- 주로 조건의 대상이나 결과가 2개인 경우에 적합하고, 조건의 대상이나 결과가 2개 이상인 경우에는 if문 보다는 switch문을 사용하는 것이 좋다.


○ 사용방법

 if (조건)

 {

    조건이 참(True)일 때 분기처리

  }

 else

 {

    조건이 거짓(False)일 때 분기처리

  }


○ 일반적인 예제 : if_01.java

class if_01 

{

public static void main(String[] args) 

{

int jumsu = 85 ;

if ((jumsu > 80))

{

System.out.println("합격입니다.");

System.out.println("이제 놀아도 됩니다.");

System.out.println("내일까지 놀아도 됩니다.");

}

else

{

System.out.println("재시험 대상입니다.");

}

}

}


- 실행 결과



○ 같음 비교 예제 : if_02.java

 class if_02 

{

public static void main(String[] args) 

{

int aa = 30 ;

                int bb = 40 ;


if (aa == bb)

{

System.out.println("서로 같습니다.");

}

else

{

System.out.println("서로 틀립니다.");

}

}

}


- 실행 결과



○ 크기 비교 예제 : if_03.java

class if_03 

{

public static void main(String[] args) 

{

int aa = 10 ;

                int bb = 20 ;

                int cc = 30 ;


if (aa > bb && aa > cc)

{

System.out.println("aa가 제일 큰 수 입니다.");

}

else

{

System.out.println("aa가 제일 큰 수가 아닙니다.");

}

}

} 


- 실행 결과



○ char 타입 데이터형 비교 예제 : if_04.java

class if_04 

{

public static void main(String[] args) 

{

char aa = 'a' ;


if (aa == 'A')

{

System.out.println("비교한 문자가 서로 같습니다.");

}

else

{

System.out.println("비교한 문자가 서로 다릅니다.");

}

}

} 


- 실행 결과



○ 문자열 비교 예제 : if_05.java

class if_05

{

public static void main(String[] args) 

{

String name = "홍길동" ;


if (name.equals("홍길동"))

{

System.out.println("당신은 홍길동이 맞습니다.");

}

else

{

System.out.println("당신은 홍길동이 아닙니다.");

}

}

}  


- 실행 결과



○ else문의 생략 : 조건이 거짓인 경우 특별한 처리를 원하지 않는 경우 else문은 생략할 수 있다.


○ 다중 else문의 처리 : 실재는 else문을 여러개 사용하는 것보다는 switch문을 사용하는 것이 더 편리

 if(조건1)

 {

   조건1이 참(True)일 때 분기 처리

 }

 else if(조건2)

 {

   조건2가 참(True)일 때 분기 처리

 }

 else if(조건3)

 {

   조건3이 참(True)일 때 분기 처리

 }

 else

 {

   위의 조건들이 모두 맞지 않을 때 분기 처리

 }






반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

9. for문  (0) 2013.02.22
8. switch문  (0) 2013.02.21
6. 다양한 연산 예제  (0) 2013.02.20
5. 연산자  (0) 2013.02.19
4. 변수의 할당 = 대입  (0) 2013.02.18
:
반응형

1. 문자 더하기


○ 문자 더하기 : String 형 문자를 연결할 수 있다.


○ 문자 더하기 예제 :  strplus.java

class strplus

{

    public static void main(String args[])

     {

            String name1, name2;

 

            name1 = "대한" + "민국";

            name2 = "독도는" + "한국" + "땅입니다.";


            System.out.println(name1) ;

            System.out.println(name2) ;


      }

}


- 실행결과



2. 연산의 우선 순위 : 수학과 같다.


① 괄호()를 먼저 수행한다.

② 곱하기(*) 연산자나 나누기(/) 연산자를 수행한다.

③ 더하기(+) 연산자나 빼기(-) 연산자를 수행한다.

④ 연산은 왼쪽에서 오른쪽으로 수행한다.



3. 캐스트 연산자


○ 캐스트 연산자 : 서로 다른 자료형끼리 계산을 위해 사용(원하는 자료형으로 바꿀 때 사용하는 연산자)


○ 캐스트 연산자 사용 예 : cast_exam.java

/* 캐스트 연산자 */
class cast_exam

{

    public static void main(String args[])

     {

            double a = 9.9 ;

            int b = (int) a;

 

            System.out.println(a) ;

            System.out.println(b) ;


      }

}


- 실행 결과


- 해설

· a값은 실수형 변수로 9.9이지만 b가 정수형 변수이므로 소수점 이하는  버리고 9만 취한다.

· 중요한 것은 b에 들어가 있는 a의 값은 9.9로 변함이 없다는 사실



4. 서로 다른 자료형끼리의 계산


○ 서로 다른 자료형끼리 계산을 하면 결과값은 보다 세밀하게 표현할 수 있는 쪽의 데이터형을 따라간다.


○ 서로 다른 자료형의 계산 예 : intdouble.java

class intdouble

{

    public static void main(String args[])

     {

            int a = 2 ;

            doube b = 3.14 ;

 

            System.out.println(a * b) ;

      }

}


- 실행 결과



5. 같은 자료형끼리의 계산


○ 같은 자료형끼리의 계산 결과값은 반드시 같은 자료형으로 나온다.


○ 같은 자료형끼리의 계산 예 : intint.java

class intint

{

    public static void main(String args[])

     {

            int a = 12 ;

            int b = 5 ;

            double c = a / b ;

 

            System.out.println(c) ;

      }

}


- 실행 결과


- 해설 : 원래 정상적인 나누기라면 12/5는 2.4가 되어야 맞지만 정수형 변수 나누기 정수형 변수이므로 결과값은 정수형으로 나오기때문에 2가 되어 버린다. 그래서 실수형 변수 c값은 2.0이 되는 것이다.


○ 정상적으로 2.4가 나오게 하는 방법(수정) : intint2.java

class intint2

{

    public static void main(String args[])

     {

            int a = 12 ;

            int b = 5 ;

            double c = (double) a / (double)  b ;

 

            System.out.println(c) ;

      }

}


- 실행 결과


- 해설 : 캐스트 연산자는 잠깐 값을 바꿔서 계산을 해줄 뿐 원래의 값은 변경되지 않는다.






반응형

'프로그래밍 > 초보자를 위한 Java 프로그래밍 입문' 카테고리의 다른 글

8. switch문  (0) 2013.02.21
7. if문  (0) 2013.02.20
5. 연산자  (0) 2013.02.19
4. 변수의 할당 = 대입  (0) 2013.02.18
3. 변수의 선언과 자료형  (0) 2013.02.17
: