본문 바로가기
  • think normal
새로워지기/서른의 생활코딩

ex10) java

by 청춘만화 2012. 2. 14.


1.
public class arr01 {

public static void main(String[] args) {

/*
// 객체 : 예제 arr02
int m[];            //= int []m;    
//m = 사용자 정의 명칭(기억공간=heap상의m의 주소)
//stack 상에 4byte로 null로 확보된다.
m= new int[5];       // new를 통해 heap상에 4byte*5개를 확보한다.
      //기본적으로 length가 확보되고 그 안에 "5"가 기억된다.
      //단, 접근은 m.length로 한다.
System.out.println("개수:"+m.length);
System.out.println(m[0]);
System.out.println(m[1]);
System.out.println(m[2]);
System.out.println(m[3]);
System.out.println(m[4]);  // 모두 0으로 초기화된다.(정수형이니까)
// 실수형=0.0 문자형=\u0000(=null)
// 논리형-false
 
//for활용(같은 결과)
for(int i=0;i<5;i++){
System.out.print(m[i]);
}
//for활용2
int sum=0;
for(int j=0;j<m.length;j++){
sum+=10;
m[j]=sum;
}
System.out.print("\n");
for(int k=0;k<m.length;k++){
System.out.print(m[k]);
}
**/

// 객체 : 예제 arr02
//1 int m[];
//         m = new int[5];
 
//2 int m[] =new int[5];
// m[0]=10;
// m[1]=10;
// m[2]=10;
// m[3]=10;
// m[4]=10;

//3 //int m[] = new int{10,20,30,40,50};
// int m[] = new int[]{10,20,30,40,50};

//4 int []m = {10,20,30,40,50};
int []m = {10,20,30,40,50};
// m[5] = 60;    // 주의1) 컴파일 오류는 아니지만 실행 오류!
//      //        = 예외처리 : 기억장소의 메모리를 넘어갔기때문에
// m.length = 7; // 주의2) length는 읽기 전용 변수! 
for (int i=0;i<5;i++)
System.out.println(m[i]+"");

}

}




2.
public class arr02 {
public static void main(String[] args) {
/* " 1차원 배열 "
//참조형
String str[]=new String[3];
// =  String str[];
//(+) str=new String[3];
//[String ->(Object class로부터 상속됨) + function table공유 ]=객체
//str[0] 만났을 때 heap메모리안에 [0]안에  "korea"가 저장
str[0]="korea";
str[1]="seoul";
str[2]="busan";
for(int i=0;i<str.length;i++) // ()있는것, 멤버함수
  // ()없는것, 멤버변수(=값을 저장한다=데이터맴버)
//System.out.println(str[i]);
System.out.println(str[i].toString());
//기본형1
String str[]=new String[]{"aaa","bbb","ccc"};
for(int i=0;i<str.length;i++) 
System.out.println(str[i].toString());
//기본형2
String str[]={"aaa","bbb","ccc"};
for(int i=0;i<str.length;i++) 
System.out.println(str[i].toString());
**/
 
//기본형3
String str[]={new String("aaa"),new String("bbb"),new String("ccc")};
for(int i=0;i<str.length;i++) 
System.out.println(str[i].toString());
}
}



3.
public class arr03 {

public static void main(String[] args) {
//1 int m[][],sum=0; // stack에 참조형 변수가 만들어짐(null로) 
// :참조변수 <=m의"번지값"(실재값X)이 들어온다!!!
// heap에 m엔 아직 아무것도 없다.
// m = new int[2][3];   // heap에 1) m이 생성(2byte) 
// // :참조변수 <=m[2]의 "번지값"(실재값X)이 들어온다!!! 
// // heap에 2) m[2]이 생성(3byte) 따라서 m[0].length=3
//
// for(int i=0; i<=1; i++){
// for(int j=0; j<=2; j++){
// sum +=1;
// m[i][j]=sum;
// }
// }

//2 m = new int[2][3]{{1,2,3},{4,5,6}};
//3 m = {{1,2,3},{4,5,6}};
//4 int m[][] = new int[2][3]{{1,2,3},{4,5,6}};
//5 int m[][] = new int[2][3]{(1,2,3),(4,5,6)};

int m[][] = {{1,2,3},{4,5,6}};   //6
for(int i=0; i<m.length; i++){
for(int j=0; j<m[i].length; j++){
System.out.print(m[i][j]+" ");
}
}
}

}



4.
public class arr04 {

public static void main(String args[]) {
/*
//다중 배열01
int n[][]=new int[4][];
n[0]= new int[3];
n[1]= new int[1];
n[2]= new int[4];
n[3]= new int[2];

int sum=0;

for (int i=0;i<n.length;i++){
for (int j=0;j<n[i].length;j++){
sum +=10;
n[i][j]=sum;
}
}
for (int i=0;i<n.length;i++){
for (int j=0;j<n[i].length;j++){
System.out.print(n[i][j]+" ");
}
}
**/
//가변 배열
// int n[][]={{1,2,3},{10},{22,33,44,55},{1,2}};
int n[][]=new int[][]{{1,2,3},{10},{22,33,44,55},{1,2}};
for (int i=0;i<n.length;i++){
for (int j=0;j<n[i].length;j++){
System.out.print(n[i][j]+" ");
}
}
}
}






 

'새로워지기 > 서른의 생활코딩' 카테고리의 다른 글

ex12) java  (0) 2012.02.14
ex11) java  (0) 2012.02.14
ex9) java  (0) 2012.02.14
ex8) java  (0) 2012.02.14
java _20120213  (0) 2012.02.14

댓글