사용자 도구

사이트 도구


study:java:javachobo:ch5

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
study:java:javachobo:ch5 [2010/01/21 09:25]
starlits
study:java:javachobo:ch5 [2010/01/21 09:35]
starlits
줄 79: 줄 79:
  
 ===== 가변 배열 ===== ===== 가변 배열 =====
 +
 +  - 자바에서는 2차원 이상의 배열에 대해서 "배열의 배열"의 형태로 처리한다는 사실을 이용하면 보다 자유로운 형태의 배열을 구성할 수 있다. 
 +  - 2차원 이상의 다차원 배열을 생성할 때 전체 배열 차수 중 마지막 차수의 크기를 지정하지 않고, \\ 추후에 각기 다른 크기의 배열을 생성함으로써 고정된 형태가 아닌 보다 유동적인 가변 배열을 구성할 수 있다. 
 +  - 아래와 같이  2차원 배열을 생성하면 다음과 같이 각 열마다 다른 크기의 배열이 생성하는 것이 가능하다. <code java>
 +int[][] score = new int[5][]; 
 +score[0] = new int[4]; 
 +score[1] = new int[3]; 
 +score[2] = new int[2]; 
 +score[3] = new int[2]; 
 +score[4] = new int[3]; 
 +</code>
 +  - 가변배열 역시 중괄호{}를 이용해서 다음과 같이 생성과 초기화를 동시에 하는 것이 가능하다. <code java>
 +int[][] score = {
 +  {100, 100, 100, 100}, 
 +  {20, 20, 20}, 
 +  {30, 30}, 
 +  {40, 40}, 
 +  {50, 50, 50}
 +}; 
 +</code> 
 + 
  
 ===== 배열의 복사 ===== ===== 배열의 복사 =====
 +  - 배열은 한번 생성하면 그 크기를 변경할 수 없기 때문에 더 많은 저장공간이 필요하다면 보다 큰 배열을 새로 만들고 이전 배열로부터 내용을 복사해야한다. 
 +  - 배열 간의 내용을 복사하려면 <color blue>for문을 사용</color>하거나 <color blue>System클래스의 arraycopy메서드를 사용</color>하면 된다.
 +  - 배열은 생성과 동시에 자동적으로 자신의 타입의 기본값으로 초기화 되므로 배열 요소들이 int의 기본값인 0으로 초기화 되었다는 것을 알 수 있다. 
  
 ===== 커맨드라인을 통해 입력받기 ===== ===== 커맨드라인을 통해 입력받기 =====
  
- +  -  커맨드라인을 이용한 방법 : System.in.read()이외에 화면을 통해 사용자로부터 값을 입력받을 수 있는 간단한 방법이 있다.  
- +  - 프로그램을 실행할 때 클래스이름 뒤에 공백문자로 구분하여 여러 개의 문자열을 프로그램에 전달 할 수 있다.  
- +  - 실행할 프로그램의 main메서드가 담긴 클래스의 이름이 MainTest라고하면 아래와 같이 실행할 수 있을 것이다. <code java> 
- +c:\j2sdk1.4.1\work>java MainTest abc 123  
- +</code> 
- +  - 커맨드라인을 통해 입력된 두 문자열은 String 배열에 담겨서 MainTest클래스의 main메서드의 매개변수(args)에 전달된다. \\ main메서드 내에서 args[0],args[1]과 같은 방식으로 커맨드라인으로 부터 전달받은 문자열에 접근할 수 있다. \\ args[0]는 "abc"이고 args[1]은 "123"이다. 
 +  - 커맨드라인에 입력된 매개변수는 공백문자로 구분하기 때문에 입력될 매개변수값에 공백이 있는 경우 겹따옴표(")로 감싸 주어야 한다.  
 +  - **<color blue>커맨드라인에서 숫자를 입력해도 숫자가 아닌 문자열로 처리된다는 것에 주의해야한다.</color>** 
  
study/java/javachobo/ch5.txt · 마지막으로 수정됨: 2010/01/21 09:35 저자 starlits