JAVA의 기본 문법 예제 알아보기

 계발에서 개발까지 

 

 

1. 변수와 데이터 형식

다른 프로그래밍 언어와 마찬가지로 Java도 변수를 선언해서 사용해야 합니다. 다음 예제에서는 정수형 변수, 실수형 변수, 문자형 변수를 선언하고 값을 대입한 후 출력하는 예제 입니다. 

 

안드로이드 스튜디오라는 툴에서 예제를 실행하였습니다. 

 

public class MainActivity extends AppCompatActivity {

    int ex1 = 10;  //정수형 변수 선언
    float ex2 = 10.1f; //float형에 값을 대입할 때는 뒤에 f를 붙여야 한다.
    double ex3 = 10.2; //8B를 사용하ㅕ며 실수를 입력, float보다 정밀도가 높다.
    char ex4 = '계'; // char형은 문자 하나를 ''로 묶어야 한다.
    String ex5 = "계발에서 개발까지"; // 문자열 String은 ""로 묶는다.

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


//출력
        System.out.println(ex1);
        System.out.println(ex2);
        System.out.println(ex3);
        System.out.println(ex4);
        System.out.println(ex5);
    }
}

로그 출력

 

Java에서 주로 사용되는 데이터형

 

문자형

  1. char : 2B를 사용하며 한글 또는 영문 1개만 입력
  2. String : 여러 글자의 문자열을 입력

정수형

  1. byte : 1B를 사용하며 -128~+127까지 입력
  2. short : 2B를 사용하며 -32768~+32767까지 입력
  3. int : 4B를 사용하며 -21억~+21억까지 입력
  4. long : 8B를 사용하며 상당히 큰 정수까지 입력 가능

실수형

  1. float : 4B를 사용하며 실수를 입력
  2. double : 8B를 사용하며 실수를 입력, float보다 정밀도가 높음

불리언형

  1.  boolean : true 또는 false를 입력

※ 원칙적으로 char형은 정수형에 포함되며 숫자로 입력해도 된다. 하지만char는 문자 하나를 대입하는 용도로 많이 사용하기 때문에 문자형으로 분류했습니다.

 

2. 조건문: if, switch()~case

if문은 조건이 true인지 false인지에 따라서 어떤 작업을 할 것인지를 결정합니다. true와 false 중 하나로 결정되기 때문에 if문을 이중 분기라고도 부릅니다.

 

 if (조건식){
            //조건식이 true일 때 실행
 }else {
            //조건식이 false일 때 이 부분 실행
 }

switch()~case문은 여러 가지 경우에 따라서 어떤 작업을 할 것인지를 결정하므로 switch()~case문을 다중 분기라고도 부릅니다.

   switch (값) {
            case 값1:
                //값 1 이면 실행
                break;

            case 값2:
                //값 2 이면 실행
                break;


            default:
                //아무것도 해당하지 않으면 실행
                break;
        }

 

3. 배열

배열은 여러 데이터를 한 변수에 저장하는 데 사용합니다. 일차원 배열과 이차원 배열의 개념은 밑에 사진으로 보시면 됩니다.

 

배열의 개념

일차원 배열을 선언하고 값을 대입하는 방법은 다음과 같습니다.

 

public class MainActivity extends AppCompatActivity {

    int one[] = new int[4];


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        
        one[0] = 10;
        one[3] = 20;




    }
}

이차원 배열을 선언하고 값을 대입하는 방법입니다.

 

public class MainActivity extends AppCompatActivity {

    int two[][] = new int[3][4];


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        two[0][0]  = 100;
        two[2][3] = 200;




    }
}

 

배열을 선언하면서 바로 값을 대입도 가능합니다.

 

   int three[] = {1, 2, 3};

 

4. 반복문 : for, while

반복문은 조건문과 함께 프로그래밍의 필수 요소로 사용됩니다. 가장많이 사용하는 사용하는 기본 문법이기도 합니다.

 

     for (초기시; 조건식; 증감식;){
            // 여기서 반복싱행
        }
        
        for (변수형 변수 : 배열명){
            // 여기서 변수를 사용
        }

배열의 내용이 하나씩 변수에 대입된 후 for문 내부가 실행됩니다. 그러므로 결국 배열의 개수만큼 for문이 반복됩니다.

 

while문은 다음과 같은 형식입니다.

 

   while (조건식){
       //조건이 true인 동안 이 부분을 수행
   }

 

5. 메소드와 전역변수, 지역변수

기본 메소드인 main() 메소드 외에 사용자가 메소드를 추가로 생성할 수 있습니다. 또는 메소드를 호출할 때 파리미터를 넘길 수도있고,  메소드에서 사용된 결과를 retrun문으로 돌려줄 수 도있습니다.

 

변수에는 전역변수(global variable)와 지역변수(local variable)가 있습니다. 전연변수는 모든 메소드에 사용되고 지역변수는 메소드 내부에서만 사용됩니다.

 

public class MainActivity extends AppCompatActivity {


  static  int var = 100; // 전역변수를 var로 선언하고 100을 대입

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        int var = 0; // 지역변수 var를 선언하고 0 대입
        System.out.println(var); // var를 출력하면 지역변수가 우선시 되기에 지역변수의 값 출력

        int sum = addFunction(10,20); // addFunction 호출
        System.out.println(sum);

    }

   static int addFunction(int num1, int num2){ //사용자 메소드를 생성, 메소드의 반환값은 int형으로 설정
        int hap;                               //파라미터는 정수형 2개는 받는다 메소드는 파라미터로 받은 두 값과 전역변수 var값을 더해서 돌려줌
        hap = num1 + num2 + var; // 전역변수인 var100이 적용됩니다.
        return hap; 
   }
}

코드 출력

 

6. 예외 처리: try~catch

예외(exception)는 java 프로그램 실행 중에 발생하는 오류를 말합니다. java는 try~catch문을 통해 이 오류를 처리합니다. 결국 try~catch문은 java 프로그램을 견고하게 만들어주는 역활을 합니다.

 

public class MainActivity extends AppCompatActivity {


  static  int var = 100; // 전역변수를 var로 선언하고 100을 대입

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        int num1 = 100, num2 = 0;
        try {
            System.out.println(num1/num2);
        }
        catch (java.lang.ArithmeticException e){
            System.out.println("계산에 문제가 있습니다.");
        }

    }

}

 

 

7. 연산자

 

Java에는 여러가지 연산자가 있는데 주로 사용하는 연산자 입니다.

 

  1.  + , - , * , / ,  %  : 사칙 연산자로 %은 나머지 값을 계산한다.
  2. + , -   :  부호 연산자로 변수 , 수, 식 앞에 붙일 수 있다.
  3. = :  대입 연산자로 오른쪽 왼쪽에 대입한다.
  4. ++, -- : 1씩 증가 또는 감소
  5. ==, !=, <, >, >=, <=   :  비교 연산자로 결과는 true 또는  false가 되며, if문이나 반복문의 조건식에 주로 사용된다.
  6. &&, ||  : 논리 연산자로 and , or를 의미한다
  7. &, | , ^ , ~  : 비트 연산자로, 비트 단위로 and, or, exclusive or, not 연산을 한다.
  8. <<, >>  : 시프트 연산자로, 비트 단위로 왼쪽 또는 오른쪽으로 이동한다.
  9. +=, -=, *=, /= : 복합 대입 연산자로,  'a +=b'는 'a=a+b'와 동일하다.
  10. (데이터형) : 캐스트(cast) 연산자로, 데이터형을 강제로 변환해준다. 예를 들어 int a = (int) 3.5는 double형인 3.5값을 int 형으로 강제로 변환해서 a에 대입한다. 결국 a에는 3이 대입된다.

연산자 중 캐스트 연산자는 안드로이드 프로그래밍에서 클래스 형 데이터의 강제 형식 변환에도 상당히 많이 사용됩니다. 예를 들어 다음 예는 View 클래스형을 Button형으로 변환하는 코드 입니다. 

 

       
        Button button;
        button = (Button)findViewById(R.id.btn);

 

수고하셨습니다 ★

더 많은 정보

 https://deumdroid.tistory.com/ 

 

 

 

 

댓글

Designed by JB FACTORY