JAVA5

Leafy·2023년 12월 8일
0

중앙_자바

목록 보기
8/76

Java for문 라벨링
https://blog.naver.com/jin93hj/220630394881

선생님 블로그
https://blog.naver.com/wisejia/220787654547

\r carriage return에 대하여~~
맨 앞으로 옮기기, 종이 한 줄 올리기
https://jw910911.tistory.com/90

package dec08;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
//3x3 배열 만들고 1~9까지 데이터를 랜덤하게 입력해주자.
public class MultiArray03 {
	public static void main(String[] args) {
		
//		int arr[][] = new int[3][3];
//		
//		// 1~9
//		int numbers[] = new int[9];
//		
//		for (int i = 0; i < numbers.length; i++) {
//			
//		}
		
		
		
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		list.add(3);
		list.add(4);
		
		System.out.println(list); //[1, 2, 3, 4]
		
		//삭제
		list.remove(0);//index 위치에 값 지우기
		System.out.println(list); //[2, 3, 4]
		
		//뒤에 추가
		list.add(1);
		System.out.println(list); //[2, 3, 4, 1]
		
		//자리 지정해서 추가하기
		list.add(0, 0);//index, 값 = 해당 index에 값을 넣어줍니다.
		System.out.println(list); //[0, 2, 3, 4, 1]
		
		list.get(0);//해당 위치의 값을 가져옴.
		System.out.println(list.get(0));
		list.size();//해당 집합의 크기를 가져옴.
		System.out.println(list.size());
		
		list.set(0, 100);//0번 index의 값을 변경함.
		System.out.println(list);
		
		
		
		
		
		//3x3 배열 만들고 1~9까지 데이터를 랜덤하게 입력해주자.
		System.out.println("============================");
		
		int sam[][] = new int[3][3];
		
		// 랜덤 숫자 뽑기
		for (int i = 0; i < sam.length; i++) {
			B:for (int j = 0; j < sam[i].length; j++) {
				int temp = (int) (Math.random() * 9 + 1);
				// 중복 검사 (A는 라벨 문법, 아님 continue로 해도 됨.)
				A:for (int k = 0; k < sam.length; k++) {
					for (int k2 = 0; k2 < sam[i].length; k2++) {
						if(sam[k][k2] == temp && i !=0 && j == 0) {
//							System.out.println(i + ":" + j + "중복발생 :" + temp);
							j--; //j가 0일 때는 
//							break A;
							continue B;
						}
					}
				}
				sam[i][j] = temp;
			}
		}
		
		for (int[] is : sam) {
			System.out.println(Arrays.toString(is));
		}
		
		System.out.println("=====================================");
		// 바꿔서 해보기
		// 1~9를 랜덤하게 뽑아서 배열에 저장.
		int random[] = new int[9];
		sam = new int[3][3];
		//1 - 9 숫자 랜덤하게 만들기
		A:for (int i = 0; i < random.length; i++) {
			int temp2 = (int) (Math.random() * 9 + 1);
			//중복검사
			for (int j = 0; j < random.length; j++) {
				if(random[j] == temp2) {
					i--;
					//여기 고치기.
					continue A;
				}
			}
			random[i] = temp2;
		}
		System.out.println(Arrays.toString(random));
	}
}
package dec08;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
//3x3 배열 만들고 1~9까지 데이터를 랜덤하게 입력해주자.
public class MultiArray03 {
	public static void main(String[] args) {
		
		int arr[] = new int[5];
		
		List<Integer> list = new ArrayList<Integer>();
		list.add(1);
		list.add(2);
		list.add(3);
		list.add(4);
		
		System.out.println(list); //[1, 2, 3, 4]
		
		//삭제
		list.remove(0);//index 위치에 값 지우기
		System.out.println(list); //[2, 3, 4]
		
		//뒤에 추가
		list.add(1);
		System.out.println(list); //[2, 3, 4, 1]
		
		//자리 지정해서 추가하기
		list.add(0, 0);//index, 값 = 해당 index에 값을 넣어줍니다.
		System.out.println(list); //[0, 2, 3, 4, 1]
		
		list.get(0);//해당 위치의 값을 가져옴.
		System.out.println(list.get(0));
		list.size();//해당 집합의 크기를 가져옴.
		System.out.println(list.size());
		
		list.set(0, 100);//0번 index의 값을 변경함.
		System.out.println(list);
		
		
		
		
		
		//3x3 배열 만들고 1~9까지 데이터를 랜덤하게 입력해주자.
		//3가지 타입.
		System.out.println("============================");
		
		int sam[][] = new int[3][3];
		
		// 랜덤 숫자 뽑기
		for (int i = 0; i < sam.length; i++) {
			B:for (int j = 0; j < sam[i].length; j++) {
				int temp = (int) (Math.random() * 9 + 1);
				// 중복 검사 (A는 라벨 문법, 아님 continue로 해도 됨.)
				A:for (int k = 0; k < sam.length; k++) {
					for (int k2 = 0; k2 < sam[i].length; k2++) {
						if(sam[k][k2] == temp) {
//							System.out.println(i + ":" + j + "중복발생 :" + temp);
							j--; //j가 0일 때는 
//							break A;
							continue B;
						}
					}
				}
				sam[i][j] = temp;
			}
		}
		
		//출력
		System.out.println("숫자 랜덤 : ");
		for (int[] is : sam) {
			System.out.println(Arrays.toString(is));
		}
		
		System.out.println("=====================================");
		// 바꿔서 해보기
		// 1~9를 랜덤하게 뽑아서 배열에 저장.
		int random[] = new int[9]; //숫자 1~9까지 숫자를 랜덤하게 저장
		
		
		sam = new int[3][3];
		//1 - 9 숫자 랜덤하게 만들기
		A:for (int i = 0; i < random.length; i++) {
			int temp2 = (int) (Math.random() * 9 + 1);
			//중복검사
			for (int j = 0; j < random.length; j++) {
				if(random[j] == temp2) {
					i--;
					//여기 고치기.
					//여기 break 써도 된다.
					continue A; // 원래 가까운 for문으로 가는데 A라고 라벨링해서 그리로
				}
			}
			random[i] = temp2;
		}
		System.out.println("숫자 랜덤 : ");
		System.out.println(Arrays.toString(random));
		
		//[8, 5, 7, 1, 9, 2, 3, 6, 4]
		//이제 입력하기
		int count = 0;
		for (int i = 0; i < sam.length; i++) {
			for (int j = 0; j < sam[i].length; j++) {
				sam[i][j] = random[count++];//차례대로 입력하면 만들어짐.
			}
		}
		
		//출력
		for (int[] is : sam) {
			System.out.println(Arrays.toString(is));
		}
		
		System.out.println("=========================");
		//인덱스를 랜덤으로 뽑는 경우
		sam = new int[3][3];
		int r1, r2; //index 번호
		for (int i = 0; i < 10; i++) {//숫자
			r1 = (int) (Math.random() * 3);//0 1 2 외부
			r2 = (int) (Math.random() * 3);//0 1 2 내부
			if(sam[r1][r2] == 0) { //? -> 초기값이냐 아니냐
				sam[r1][r2] = i;
//				System.out.println(r1 + ":" + r2 + "=" + i);
			} else {
				i--;
//				System.out.println("중복 발생으로 다시 뽑아!");
			}
		}
		//출력
		for (int[] is : sam) {
			System.out.println(Arrays.toString(is));
		}
	}
}

0개의 댓글

관련 채용 정보