아래의 코드들은 해당 패키지에서 작성되었다.

package com.kh.practice.array;

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

public class ArrayPractice {

}
	public void practice10() {
		
		// 주민등록번호 성별자리 이후부터 *로 가리고 출력
		// 단, 원본 배열 값은 변경 없이 배열 복사본으로 변경
		
		Scanner sc = new Scanner(System.in);
		
		System.out.print("주민등록번호(-포함) : ");
		String userNum = sc.nextLine();
		char [] user = new char[userNum.length()];
		
		for(int i=0; i<user.length; i++) {
			user[i] = userNum.charAt(i);
		}
		
		char [] newNum = new char[user.length];
		
		System.arraycopy(user, 0, newNum, 0, 8);
		
		for(int j=8; j<newNum.length; j++) {
			newNum[j] = '*';
		}
		
		for(int k=0; k<newNum.length; k++) {
			System.out.print(newNum[k]);
		}
		
	}
	public void practice11() {
		
		// 10개의 값 저장 가능한 정수형 배열 선언 및 할당
		// 1~10 사이의 난수 발생
		// 배열에 초기화한 후 출력
		
		int [] arr = new int[10];
		
		int num = 0;
		for(int i=0; i<arr.length; i++) {
			num = (int)(Math.random()*10+1);
			arr[i] = num;
			System.out.print(arr[i]+" ");
		}
	}
	public void practice12() {
		
		// 10개의 값을 저장할 수 있는 정수형 배열 선언 및 할당
		// 1~10 사이의 난수 발생
		// 배열 초기화
		// 배열 전체 값과 그 값 중에서 최대값과 최소값을 출력
		
		int [] arr = new int[10];
		
		int num = 0;
		int max = 0;
		int min = 1;
		
		for(int i=0; i<arr.length; i++) {
			num = (int)(Math.random()*10+1);
			arr[i] = num;
			System.out.print(arr[i]+" ");
			if(max<arr[i]) {
				max = arr[i];
			} else if(min>arr[i]) {
				min = arr[i];
			}
		}
		
		System.out.println("\\n최대값 : "+max);
		System.out.println("최소값 : "+min);
	}
	public void practice13() {
		
		// 10개의 값을 저장할 수 있는 정수형 배열 선언 및 할당
		// 1~10 난수 발생시켜 초기화
		// 중복은 x
		
		int [] arr = new int[10];
		
		for(int i=0; i<arr.length; i++) {
			arr[i] = (int)(Math.random()*10+1);
			
			// 넣을 배열 전까지를 훑어보기 
			for(int j=0; j<i; j++) {
				if(arr[j] == arr[i]) {
					i--;
					break; // 연속으로 같은 값이 존재하면 i--가 두 번 실행됨
				}
			}
			
		}
		
		for(int i=0; i<arr.length; i++) {
			System.out.print(arr[i]+" ");
		}
		
	}