국비-내일배움// Java (eclipse)-04
1. 2차원 배열
2. 2차원 배열 예제 문제
3. 인스턴스 배열- 초기화
4. for~each문
1.2차원 배열
int num=100;--정수값
int[] array;
array=new int[5];---참조변수
String name=new String("김태희");
----String name=("김태희");---위아래 같은 얘기
System.out.println(name);
int[][] arr = new int[3][4];
i:행의 값
for(int i=0;i<3;i++) {
//입력 출력 같이 반복문// 복잡한경우 따로 짜도됨.
for(int j=0;j<4;j++) {
arr[i][j] = i+j;
System.out.print(arr[i][j]+" ");
for(int i=0;i<arr.length;i++) {--arr.length:가로 행의 배열수
for(int j=0;j<arr[i].length;j++) {---배열 0번의 배열의 수
arr[i][j] = i+j;
System.out.print(arr[i][j]+" ");
}
System.out.println(" ");//개행
}
2. 2차원 배열 예제
층의 수와 호수를 입력
-각 층의 인원 입력
-각 층마다 인원수 합계
-총 전체 인원 한계 구하기
Scanner sc= new Scanner(System.in);
int floor, ho;
System.out.print("층의 수 입력 : ");
floor=sc.nextInt();
System.out.print("층의 호수 입력: ");
ho=sc.nextInt();
int[][]v;
v = new int[floor][ho];
for(int i=0; i<floor;i++) {
for( int j=0; j<ho; j++) {
System.out.print((i + 1) + " 층 " + (j+1) + "호 인원수: ");
v[i][j]=sc.nextInt();
}
}
int total =0 ;// 전체인원
for (int i =0; i<floor; i++) {
int sum = 0;//각층인원
for(int j=0; j<ho; j++)
sum+= v[i][j];
total+=sum;
System.out.println((i+1)+ "층 인원은 " + sum + "명" );
}
System.out.println("공동주택 총 인원" + total + "명 입니다.");
3. 문자열 배열 ---인스턴스 배열
인스턴스 배열 : 인스턴스의 참조값을 저장하는 배열
String[] name=new String[3];
name[0]="hong";// name[0]=new String("hong")
name[1]="cha";
name[2]="kim";
for(int i=0; i<name.length; i++) {
System.out.println(name[i]);
}
String ---문자
//가변 배열
초기화 ---1차원배열, 2차원 배열
int[] arr= new int[] {8,6,5,7,8,};
int[] arr= {8,6,5,7,8,};
int[] arr;
arr= {8,6,4,5,7};
- 2차원 배열 초기화
int[][]arr={ {},{},{}};
--항의 개수가 순차적으로 증가하는 항 만들기
for(int i=0; i<arr.length;i++) {
System.out.println(arr[i]);
}
int [][]arr= new int[3][];
arr[0]=new int[2];
arr[1]=new int[3];
arr[2]=new int[5];
for(int i=0; i<arr.length; i++) {
for (int j=0; j<arr[i].length; j++) {
arr[i][j]=i+j;
System.out.print(arr[i][j]+ " ");
}
System.out.println("");
}
-----
4. for~each문
public static void main(String[] args) {//배열 아님
int [] arr= new int []{3,4,5,6,3};
//for~each문
for(int e:arr) {
//e++;---복사 값만 증가 시키는 것
-- 원래 값은 변경 되지 X.
System.out.println(e);
}
}
인스턴스 변수,,, 2차배열을 배웠다... 처음엔 설명을 들어도 잘 이해가 안가서 머리가 터질거 같았지만,,, 그래도 듣다보니 그리고 예제 문제도 계속 풀다보니 비슷비슷해보이고 방법이 푸는 방법이 조금씩 눈에 들어오는거 같기도하다,, 코드를 보고 해석은 잘 되는데 처음에 짤 떄 어디서 부터 시작해야 하는거지 하고 살짝쿵 멘붕이 오지만 이또한 적응하지 않을까 싶다아... 화이티이잉!!
Author And Source
이 문제에 관하여(국비-내일배움// Java (eclipse)-04), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@djfls0528/국비-내일배움-Java-eclipse-04저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)