자바 기초(배열)

bitna's study note·2022년 3월 25일
0

자바

목록 보기
24/119

3월 25일 내용 정리
오늘도 배열배열

1.배열은 같은 타입의 연속적인방을 만들어 각 방에 값을 넣어주는것 으로 생각하자! 이때 각 방에 번호를 매기는것을 인덱스를 붙이는것이다.
배열명.

2.length 는 배열의 갯수 인덱스는 배열명.length-1 로 생각하면됨 왜? 인덱스는 0부터시작

3.Arrays.toString(배열명) 을 입력하면 [인수,인수,인수...]로 출력,
이때 import java.util.* 써줘야한다.
Arrays->배열.toString->문자열 배열을 문자열로 출력해줘!
문자열로 출력하기때문에 계산은 할수 없음.

4.배열을 생성 할때 공간 지정을 보통은 배열길이의 2배 정도 잡으면 된다고 한다. 예)for(int i=0;i<배열명.length*2;i++)

5.배열복사는 System.arraycopy(원본배열,시작인덱스,새로운배열,새배열에붙여넣을 시작인덱스,복사개수)
예)System.arraycopy(num,0,numcopy,0,num.length);

package study_0325;

public class study_0325 {

	public static void main(String[] args) {
		
		for(int i=5;1<=i;i--) { //바깥줄 for문
			for(int j=1;j<=i;j++) { //안쪽 for문
				System.out.print(j);				
			}
			System.out.println(); //안쪽 for문 돌고나서 다음줄로 출력
		}
	}

}

6.배열 선언과 객체생성 및 값 넣어주는 방법

int[]a; ->배열선언
a= new int[3] ->객체생성

int[]a=new int[3]; ->배열선언과 객체생성

a[0]=10;
a[1]=20; ->값 넣어주기
a[2]=30;

for(int i=0;i<=a.length;i++){
a[i]=i*10+10; ->값 넣어주기
}

int[]a={10,20,30} ->배열선언과 객체생성 값넣어줌 한번에 가능

7.기본타입은 내가 초기화를 시켜줘야 하지만 참조형은 null값으로 자동초기화 됨

package study_0325;

import java.util.Arrays;
import java.util.Scanner;

public class study_0325_01 {

	public static void main(String[] args) {
	
		
	//su배열 만들어서 {52,68,90,75}
		
	  /*int[]su=new int[4];
		su[0]=52;
		su[1]=68;    ->방법1(배열선언과 객체생성 값넣어줌)
		su[2]=90;
		su[3]=75;
				
		int[]su={52,68,90,75}; ->방법2(배열선언과 객체생성 값넣어줌)
	*/
		
		
//문2) int[]num={23,85,15,96,78,100,55,69,77} 최대값과 최소값 구하기
		
				/*int[]num={23,85,15,96,78,100,55,69,77};
				
				int max=0;
				int min=999;
				
				for(int i=0;i<=num.length;i++) {
					if(max<num[i]) max=num[i];
					else if(num[i]<min) min=num[i];
				}*/
				
//문3) num01배열에 => 0 ~ 9 숫자를 담고, 이것을 섞어서 출력
		
		/*int[]num01=new int[10];
		
		for(int i=0;i<num01.length;i++) {
			num01[i]=i;
		}
		for(int i=0;i<num01.length;i++) {
			int n=(int)(Math.random()*10); //램덤으로 인덱스번호 뽑기
			System.out.println(n);
			int imsi=num01[0]; //num01[0]방이 담고있는 값이 imsi에 담김 
			num01[0]=num01[n]; //num01[0]방에는 num01[?]방에 담긴값이 담김 
			num01[n]=imsi;// imsi에 담긴 num01[0]값이 num01[?]방에 담김
			
			//즉, 램덤으로 방번호를 섞어서 방의 값을 서로 교환 한다.
			}*/

//문4 로또번호 생성하기 1~45까지 번호중 6개 모두 마킹하기.
		
		/*int[]num02=new int[45];
			for(int i=1; i<num02.length;i++) {
				num02[i]=i+1;
			}
			
			for(int i=0; i<=num02.length;i++) {
				int n=(int)(Math.random()*45)+1;
				int imsi=num02[0];
				num02[0]=num02[n];
				num02[n]=imsi;
			}
			
			for(int i=1;i<=6;i++) {
				System.out.println(num02[i]);
			}*/
		
	
	}
}
profile
좋은개발자가 되기위한 삽질기록 노트

0개의 댓글

관련 채용 정보