-
2023년 05월 30일 공부 내용 정리 ( java)국비 교육 내용 정리 2023. 5. 30. 12:03
[배열]
package ch05.array;
public class ArrayEx01 {
public static void main(String[] args) {
int[] arr1;
int arr2[]; //1. 비열 참조 변수 선언
// 2. 배열 객체 생성(instance)
arr1 = new int[5];
arr2 = new int[5]; //int형 저장공간을 5개 생성, 기본값(0)으로 초기화
// 3. 배열값을 초기화
arr1[0] = 10;
arr1[1] = 20;\
arr1[2] = 30;
arr2 = arr1;
arr2[4] = 50;
// 4. 배열 출력
System.out.println("arr1 배열:");
for (int i = 0; i < arr1.length; i++) {
System.out.println("arr1[" + i + "]=" + arr1[i]);
}
System.out.println("arr2 배열:");
for (int i = 0; i < arr2.length; i++) {
System.out.println("arr2[" + i + "]=" + arr2[i]);
}
arr1[3]=777;
System.out.println("arr2 배열:");
for(int i =0; i < arr2.length; i++) {
System.out.println("arr2[" + i + "]=" + arr2[i]);
}
System.out.println("개선된 for 구문을 이용한 출력");
for (int a: arr1) {
System.out.println(a);
}
}
}
package ch05.array;
public class ArrayEx02 {
public static void main(String[] args) {
// 배열의 선언 + 생성+초기화
int arr[] = {10, 20, 30, 40, 50};
for (int a : arr) {
System.out.println(a + ",");
}
System.out.println();
for (int i = 0; i < arr.length; i++) {
System.out.println("arr[" + i + "]=" + arr[i]);
}
System.out.println();
// 생성+초기화
arr = new int[] {100, 200, 300};
for (int a : arr) {
System.out.println(a + ",");
}
System.out.println();
}
}
package ch05.array;
public class ArrayEx03 {
public static void main(String[] args) {
int[] balls = new int[45];
int[] lotto = new int[6];
for (int i = 0; i < balls.length; i++) {
balls[i] = i + 1; // 1~45
}
// balls 섞기
for (int i = 0; i < 1000; i++) {
int f = (int) (Math.random() * 45);
int t = (int) (Math.random() * 45);
// swap 알고리즘
int tmp = balls[f];
balls[f] = balls[t];
balls[t] = tmp;
}
for (int i = 0; i < balls.length; i++) {
System.out.print(balls[i]+ ",");
}
}
}
package ch05.array;
public class ArrayEx03 {
public static void main(String[] args) {
int[] balls = new int[45];
int[] lotto = new int[6];
for (int i = 0; i < balls.length; i++) {
balls[i] = i + 1; // 1~45
}
// balls 섞기
for (int i = 0; i < 1000; i++) {
int f = (int) (Math.random() * 45);
int t = (int) (Math.random() * 45);
// swap 알고리즘
int tmp = balls[f];
balls[f] = balls[t];
balls[t] = tmp;
}
// 6개의 번호 선택
for (int i =0; i < lotto.length; i++){
lotto[i] = balls[i];
}
// 선택 번호 출력
for( int b : lotto) {
System.out.println(b + "");
}
}
}
package ch05.array;
import java.util.Scanner;
/*
* 10 진수를 2진수로 변경하기
*/
public class ArrayEx04 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int arr[] = new int[32];
System.out.println("변환할 10진수를 입력하세요");
int num = scan.nextInt();
int digit=8; //변환할 진수
// A:10, B:11 .........
int divnum = num;
int index=0;
while(divnum !=0) {
arr[index++]=divnum%digit;
divnum /=digit;
}
System.out.println(num +"을 "+digit+"진수 변환 : ");
for (int i = index-1 ; i >=0 ; i--) {
System.out.println(arr[i] + " ");
}
System.out.println();
System.out.println(Integer.toBinaryString(num));
System.out.println(Integer.toOctalString(num));
System.out.println(Integer.toHexString(num));
}
}
package ch05.array;
public class ArrayEx05 {
public static void main(String[] args) {
System.out.println(args.length);
if(args.length == 0) {
System.out.println("커맨드라인에 파라미터를 입력하세요");
System.out.println("java ch05_array.ArrayEx05 홍길동 김삿갓");
return;
}
for(int i=0; i<args.length;i++) {
System.out.println("args["+i+"]="+args[i]);
}
}
}
package ch05.array;
/*
* 2차원 배열 예제
* 2차원 배열은 1차원 배열의 참조변수의 벼열로 정의 된다.
*/
public class ArrayEx06 {
public static void main(String[] args) {
int[][] arr = new int[3][2]; // [row][column] 100, 200, 300 ,400
arr[0][0] = 10;
arr[0][1] = 20;
arr[1][0] = 30;
arr[1][1] = 40;
arr[2][0] = 50;
arr[2][1] = 60;
for (int i =0; i < arr.length; i++) {
for(int j = 0; j < arr[i].length; j++) {
System.out.println("arr["+ i + "][" + j +"]=" + arr[i][j] + "\t" );
}
System.out.println();
}
System.out.println("객체 변경");
int[] arr1 = { 1, 2, 3, 4, 5}; //500
// arr[1]의 자료형 int[] 자료형
// arr1 의 자료형 int[] 자료형
arr[1][0] = 122;
arr1[3] = 5000;
for (int i = 0; i < arr.length; i++) {
for(int j =0; j < arr[i].length; j++) {
System.out.println("arr[" +i + "][" +j + "]=" + arr[i][j] + "\t");
}
System.out.println();
}
for (int i =0; i < arr1.length; i++) {
System.out.println(arr1[i] + ",");
}
System.out.println();
}
}
'국비 교육 내용 정리' 카테고리의 다른 글
2023년 06월 01일 수업내용 정리 (0) 2023.06.01 2023년 05월 31일 공부 내용 정리 ( java) (0) 2023.05.31 2023년 05월 26일 공부 내용 정리 ( java~ 퀴즈 정리하긔) (0) 2023.05.26 2023년 05월 25일 공부 내용 정리 ( java~ 퀴즈 정리하긔) (1) 2023.05.25 2023년 05월 24일 공부 내용 정리 ( java~) (0) 2023.05.24