티스토리 뷰

Development

기본개념

로글고그로그 2018. 10. 16. 19:30

-------변수와 계산---------


변수 = 값(Data)을 저장 할 수 있는 메모리 공간


상수 = 변하지 않는 값. 추후 변경불가능함. 관례는 ㄷㅐ문자이고 단어구분은 언더바(_). 구현방법 : final 상수타입 상수명  => ex) final int number


기본형 데이터타입 : 논리,문자,정수,실수형 리터럴(값자체를 일컫음)


기본형 형변환 : 묵시적 형변환(작->큰타입)으로. / 명시적 형변환(큰->작 일땐 (타입) 선언을 해줘 형변환이 가능)


연산자 : 부호, 산술, 증감, 비교, 대입(단순,복합), 논리 등

(단항/이항/삼항)

우선순위 

  • 최우선연산자 ( ., [], () )

  • 단항연산자 ( ++,--,!,~,+/-   : 부정, bit변환>부호>증감)

  • 산술연산자 ( *,/,%,+,-,shift) < 시프트연산자 ( >>,<<,>>> ) >

  • 비교연산자 ( >,<,>=,<=,==,!= )

  • 비트연산자 ( &,|,,~ )

  • 논리연산자 (&& , || , !)

  • 삼항연산자 (조건식) ? :

  • 대입연산자 =,*=,/=,%=,+=,-=

--------  제어문 --------


if문 =>


논리연산자 => 논리연산자는 논리곱(&&,&) 논리합(||,|), 배타적 논리합 () 논리부정(!) 연산을 수행한다. 논리 연산자의 피연산자는 블린 타입만 사용할 수 있다. 결과는 불린값이다.

삼항연산자 = > 조건식 ? 피연산자1 : 피연산자2

  • 조건식의 연산결과가 true 이면, 결과는 피연산자 1이고, 조건식의 연산결과가 false 이면 결과는 피연산자2


    switch =>


switch(변수){
        case 1 : 
            실행문; 
            break;
        case 2 : 
            실행문; 
            break;  
        default;    
    }


반복문 => 

while문, do-while문, for문 


while문

dowhile문
  • while문의 경우 조건이 만족하지 않는다면 한번도 반복하지 않을 수 있다.하지만, do while문의 경우는 무조건 한번은 실행되는 반복문이다.
    do{
        실행문;
    }while(조건문);
for문

for반복문은 변수초기화, 조건식, 증감식이 한줄에 모두 있다.

 for(초기화식; 조건식; 증감식){
        실행문;
        실행문;
    }

continue 현재실행문 끝내고 다음 실행

break for문끝낸다




--------  배열 --------

참조형 타입. 기본데이터 타입X.


1차원 배열

배열은 같은 데이터 타입을 가진 연속된 메모리 공간으로 이루어진 자료구조이다.

같은 데이터 타입을 가진 여러개의 변수가 필요할 때 사용

배열 생성 후, 배열에 값을 저장.
 int[] array1 = new int[4];
    array1[0] = 1;
    array1[1] = 2;
    array1[2] = 3;
    array1[3] = 4;


  • 선언과 동시에 초기화하는 방법
 int[] array2 = new int[]{1,2,3,4};

or

 int[] array2 = {1,2,3,4};


배열의 길이?

=> 변수명.length


cf)변수의 scope

선언된 해당 블록 내에서만 사용가능


배열의 모습을 보고싶다면

Arrays.toString(배열명) 으로 해야한다.

배열명을 그냥 출력시 그 해당된 주소값이 출력되므로.


2차원배열

2차원 배열이란 배열의 배열이다.

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

2차원 배열에 값 저장

 array4[1] = 10 <==== 오류. why?  array4[1] 은 또 다른 1차원 배열을 가리킬 수 있는 참조형 변수이기 때문에 값을 담을수는 없다.

array4[0][0] = 10;  이런식으로 값을 저장하자.


가변크기의 2차원 배열을 생성도 가능함.

 int[][] array5 = new int[3][];

이렇게하면, array5[0][0] = 10은 오류난다. 반드시 배열 만들어줘야한다.

해당 배열에 값을 저장시,

array5[0] = new int[1]; //정수를 하나 담을 수 있는 배열을 생성해서 array5 의 0 번째 인덱스가 참조한다.  
    array5[1] = new int[2]; //정수를 두개 담을 수 있는 배열을 생성해서 array5 의 1 번째 인덱스가 참조한다.  
    array5[2] = new int[3]; //정수를 세개 담을 수 있는 배열을 생성해서 array5 의 2 번째 인덱스가 참조한다. 


가변크기의 2차원 배열을 선언과 동시에 초기화하는 ㅂㅏㅇ법.

 int[][] array6 = {{1}, {2,3}, {4,5,6}};


for each

자바 1.5 버전부터 추가된 foreach 구문(인텔리제이에서 iter치면 자동생성)

for (타입 값을받을변수명 : 출력하고픈자료구조변수명) {실행문}


    int[] iarr = {10,20,30,40,50};

    for(int value:iarr){
        System.out.println(value);
    }


공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함