728x90
반응형

 

  SVN에서 내려받은- 다른 분들은 이미 잘 쓰고 있을 정상적인 소스인데 이상하게 몇 군데에서 Remove '@Override' annotation 이라는 에러가 나온다. 처음에는 멋모르고 이클립스가 시키는대로 다 지우려고 시도했는데, 자바 빌드 버전을 바꿔주면 된다는 상사님의 가이드를 받고서 웹 검색을 해보니 '아뿔사~' 검색되는 내용이 많다. 이미 많은 사람들이 앞서 이겨낸(?) 문제였던것! 

 

Project --> Properties --> Java Compiler --> Enable project specific settings 체크  
                                           --> 
Compiler compliance settings 리스트박스에서 자신의 자바 버전에 맞게 체크


728x90
반응형
728x90
반응형

사용자 입력받기 - 커맨드라인

 커맨드라인에서 입력된 값들은 문자열 배열에 담겨 main메서드에 전달된다.

public static void main(Stirng[] args)

{

      System.out.println("매개변수의 개수:"+args.length);

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

            System.out.println("args["+i+"]=\""+args[i]"+\"") ;

      }

}

[실행 결과]

  매개변수의 개수:3

  args[0]="abc"

  args[1]="123"

  args[2]="Hello World"


<커맨드라인 입력>





사용자 입력받기 - 입력창(InputDialog)

 Swing패키지의 JOptionPane.showInputDialog() 를 사용




<입력창>

 

728x90
반응형
728x90
반응형

다차원 배열의 선언과 생성

'[]'의 갯수가 차원의 수를 의미한다.

 ->선언 방법                 ->선언 예

  타입[][]변수이름;       int[][]score;

  타입 변수이름[][];      int score[][];

  타입[] 변수이름[];      int[] score[];

※ int [][] score = new int [5][3]; //5행 3열의 2차원 배열을 생성한다.

 

가변 배열

 다차원 배열에서 마지막 차수의 크기를 지정하지 않고 각각 다르게 지정

 예) 

  int [][] score = new int[5][];    또는   int [][] score = {

  score[0] = new int [3];                             { {100, 100, 100},

  score[1] = new int [3];                                { 20,  20,  20 },

  score[2] = new int [3];                                { 30,  30,  30 },

  score[3] = new int [3];                                { 40,  40,  40 },

  socre[4] = new int [3];                                { 50,  50,  50 } };

  

  int [][] score = new int [5][];    또는   int [][] score = {

  score[0] = new int [4];                            { {100, 100, 100, 100},

  score[1] = new int [3];                               { 20,  20,  20 }, 

  score[2] = new int [2];                               { 30,  30 }, 

  score[3] = new int [2];                               { 40,  40 }, 

  score[4] = new int [3];                               { 50,  50,  50 } };

 

<이차원 배열>

 

 

 

 

for문을 이용한 배열의 복사

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

 int [] newNumber = new int [10];

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

       newNumber[i] = number[i];   //배열 number의 값은 newNumber에 저장한다.

 }

 

System.arraycopy()를 이용한 배열의 복사

 System.arraycopy(arr1, 0, arr2, 0, arr1.length);

                        -> arr1 [0]에서 arr2 [0]으로 arr1.length개의 데이터를 복사

 

<배열의 복사>

728x90
반응형
728x90
반응형
배열
 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것
 많은 양의 값(데이터)을 다룰 때 유용하다.
 배열의 각 요소는 서로 연속적이다.

배열의 선언과 생성
① 타입 또는 변수이름 뒤에 대괄호[]를 붙여서 배열을 선언한다.
  -> 타입[]변수이름;       -> 타입 변수이름 []; 
        int [] score;                 int score [];
       String [] name;             String name [];

② 배열을 선언한다고 해서 값을 저장할 공간이 생성되는 것이 아니라 배열을 다루는데 필요한 변수가 생성된다.
  -> int [] score;            //배열을 선언한다.(생성된 배열을 다루는데 사용될 참조변수 선언)
      score = new int [5]; //배열을 생성한다.(5개의 int값을 저장할 수 있는 공간생성)
  ※위의 두 문장을 int[]score=new int[5]; 와 같이 한 문장으로 줄여 쓸 수 있다.



 <배열의 초기화>
 생성된 배열에 처음으로 값을 저장하는 것
1)
  int [] score=new int[5]  //크기가 5인 int형 배열을 생성한다.
  score[0] = 100;               //각 요소에 직접 값을 저장한다.
  score[1] = 90;
  score[2] = 80;
  score[3] = 70;
  score[4] = 60;              //배열의 첫번째는 [0]번째부터 시작
2)
  int [] score= { 100, 90, 80, 70, 60 };  //1번
  int [] score= new int [] { 100, 90, 80, 70, 60 };  //2번
3)
  int [] score;
  score = {100, 90, 80, 70, 60 };  //에러발생 !!
  int [] score;
  score=new int [] {100, 90, 80, 70, 60}; //성공!!




<배열의 활용>
 배열에 값을 저장하고 읽어오기

 score[3]=100;           //배열 score의 4번째 요소에 100을 저장한다.
 int value = score[3];  //배열 score의 4번째 요소에 저장된 값을 읽어서 value에 저장.

※ '배열이름.length' 는 배열의 크기를 알려준다.


728x90
반응형
728x90
반응형

반복문 do~while문

 while문의 변형, 블럭{ }을 먼저 수행한 다음에 조건식을 계산한다.

 조건과 관계없이 블럭{ }안의 문장이 최소한 1번은 실행한다.

    do {

            // 조건식의 연산결과가 true일 때 수행될 문장들을 적는다.

     } while(조건식);

 

<do~while문>

 

 

 

break문

 자신이 포함된 하나의 반복문 또는 switch문을 빠져 나온다.

 주로 if문과 함께 사용해서 특정 조건을 만족하면 반복문을 벗어나게 한다.

 

 

continue문

 자신이 포함된 반복문의 끝으로 이동한다.(다음 반복으로 넘어간다.)

 continue문 이후의 문장들은 수행되지 않는다.

 

 

 

이름 붙은 반복문과 break, continue

 반복문 앞에 이름을 붙이고, 그 이름을 break, continue와 같이 사용함으로써 둘 이상의 반복문을 벗어나거나

 반복을 건너뛰는 것이 가능하다.

 

728x90
반응형

+ Recent posts