[JAVA] ๋ฐฐ์—ด(array), Wrapper Class

seonjeongยท2022๋…„ 12์›” 25์ผ
0

Java

๋ชฉ๋ก ๋ณด๊ธฐ
4/26
post-thumbnail

๐Ÿ’– ๋ฐฐ์—ด(array)

๊ฐ™์€ ์ž๋ฃŒํ˜•์˜ ๋ฌถ์Œ. ๋ฐ์ดํ„ฐ ๊ด€๋ฆฌ ๋ชฉ์ 
๋ณ€์ˆ˜์™€ ๋‹ฌ๋ฆฌ ๊ฐ ์ €์žฅ๊ณต๊ฐ„์ด ์—ฐ์†์ ์œผ๋กœ ๋ฐฐ์น˜

๐Ÿ”ฅ ๋ฐฐ์—ด์˜ ์„ ์–ธ๊ณผ ์ƒ์„ฑ

ํ˜•์‹

์ž๋ฃŒํ˜• ๋ฐฐ์—ด๋ณ€์ˆ˜๋ช…[] = new ์ž๋ฃŒํ˜•[๋ฐฐ์—ด์˜ ์ด ์ˆ˜];

์˜ˆ์‹œ

int array[] = new int[10];	// 10๊ฐœ์˜ ๋ณ€์ˆ˜๋ฅผ (์„ ์–ธ)ํ• ๋‹น
// int []array = new int[10];
// int[] array = new int[10]; -> ๋ชจ๋‘ ๊ฐ€๋Šฅ

array[0] = 1; 	// -> index number : ๋ฒˆ์ง€, 0๋ถ€ํ„ฐ ์‹œ์ž‘
array[1] = 2;
array[2] = 3;
	 :
array[9] = 10;

// for๋ฌธ ์ด์šฉ
for(int i = 0; i < 10; i++) {
	array[i] = i + 1;
}

๐Ÿ”ฅ ๋ฐฐ์—ด์˜ ๊ธธ์ด

ํ˜•์‹

๋ฐฐ์—ด์ด๋ฆ„.length

์˜ˆ์‹œ

int arr[] = new int[5];
int tmp = arr.length 	// -> tmp = 5

for(int i = 0; i < arr.length; i++) {
	System.out.println(arr[i]);		// ๋ฐฐ์—ด์˜ ์ถœ๋ ฅ 
}

๐Ÿ”ฅ ๋ฐฐ์—ด์˜ ์ดˆ๊ธฐํ™”

int[] score = new int[]{50, 60, 70, 90}	// ๋ฐฐ์—ด์˜ ์ƒ์„ฑ๊ณผ ์ดˆ๊ธฐํ™”๋ฅผ ๋™์‹œ์—
int[] score = {50, 60, 70, 90}			// new int[] ์ƒ๋žต๊ฐ€๋Šฅ

System.out.println(Arrays.toString(score));	// ๋ฐฐ์—ด์˜ ์ถœ๋ ฅ

// console
// [50,60,70,90]

โœ ๋ฐฐ์—ด์˜ ํ™œ์šฉ

  • ์ดํ•ฉ, ํ‰๊ท 
class ArrayEx5 {
	public static void main (String[] args) {
    	int sum = 0;		// ์ด์ ์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ณ€์ˆ˜
        float average = 0f;	// ํ‰๊ท ์„ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ๋ณ€์ˆ˜
        
        int[] score = {100, 88, 100, 100, 90};
        
        for(int i = 0; i < score.length; i++) {
        	sum += score[i];
        }
        average = (float)sum / score.length;	// ๊ณ„์‚ฐ๊ฒฐ๊ณผ๋ฅผ float๋กœ ์–ป๊ธฐ ์œ„ํ•ด์„œ ํ˜•๋ณ€ํ™˜
        
        System.out.println("์ด์  = " + sum);
        System.out.println("ํ‰๊ท  = " + average);
    }
}

// console
// ์ด์  = 478
// ํ‰๊ท  = 95.6
  • ์ตœ๋Œ€๊ฐ’, ์ตœ์†Œ๊ฐ’
class ArrayEx6 {
	public static void main (String[] args) {
		int[] score = {79, 88, 91, 33, 100, 55, 95};
    
    	int max = score[0];
    	int min = score[0];
    
    	for(int i = 0; i < score.length; i++) {
        	if(max > score[i]) {
            	max = score[i];
        	} else if(min < score[i]) {
            	min = score[i];
        	}
    	}
    
    	System.out.println("์ตœ๋Œ€๊ฐ’ = " + max);
    	System.out.println("์ตœ์†Œ๊ฐ’ = " + min);
    }
}    

// console
// ์ตœ๋Œ€๊ฐ’ = 33
// ์ตœ์†Œ๊ฐ’ = 100
  • ์„ž๊ธฐ(shuffle)
class ArrayEx7 {
	public static void main (String[] args) {
		int[] numArr = new int[10];
        
        for(int i = 0; i < numArr.length; i++) {
        	numArr[i] = i;
            System.out.println(numArr[i]);
        }
        System.out.println();
        
        for(int i = 0; i < 100; i++) {
        	int n = (int)(Math.random() * 10);
            int tmp = numArr[0];
            numArr[0] = numArr[n];
            numArr[n] = tmp;
        }
        
        for(int i = 0; i < numArr.length; i++) {
        	System.out.println(numArr[i]);
        }
    }
}

// console
// 0123456789
// 3182450967
class ArrayEx8 {
	public static void main (String[] args) {
		int[] ball = new int[45];
        
        // ๋ฐฐ์—ด์˜ ๊ฐ ์š”์†Œ์— 1~45์˜ ๊ฐ’ ์ €์žฅ
        for(int i = 0; i < ball.length; i++) {
        	ball[i] = i + 1;
        }
        
        int temp = 0;
        int j = 0;
        
        // ๋ฐฐ์—ด์˜ i๋ฒˆ์งธ ์š”์†Œ์™€ ์ž„์˜์˜ ์š”์†Œ์— ์ €์žฅ๋œ ๊ฐ’์„ ์„œ๋กœ ๋ฐ”๊ฟ”์„œ ๊ฐ’์„ ์„ž๋Š”๋‹ค.
        // 0๋ฒˆ์งธ๋ถ€ํ„ฐ 5๋ฒˆ์งธ ์š”์†Œ๊นŒ์ง€ ๋ชจ๋‘ 6๊ฐœ๋งŒ ๋ฐ”๊พผ๋‹ค.
        for(int i = 0; i < 6; i++) {
        	j = (int)(Math.random() * 45);
        	temp = ball[i];
            ball[i] = ball[j];
            ball[j] = temp;
        }
        
        // ๋ฐฐ์—ด ball์˜ ์•ž์—์„œ๋ถ€ํ„ฐ 6๊ฐœ์˜ ์š”์†Œ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค
        for(int i = 0; i < 6; i++) {
        	System.out.printf("ball[%d]=%d%n", i, ball[i]);
        }
    }
}

// console
/*
ball[0]=31
ball[1]=44
ball[2]=32
ball[3]=3
ball[4]=34
ball[5]=19
*/
  • ์ž„์˜์˜ ๊ฐ’์œผ๋กœ ๋ฐฐ์—ด ์ฑ„์šฐ๊ธฐ
import java.until.*;	// Arrays.toString()์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€

class ArrayEx9 {
	public static void main (String[] args) {
		int[] code = {-4, -1, 3, 6, 11};	// ๋ถˆ์—ฐ์†์ ์ธ ๊ฐ’๋“ค๋กœ ๊ตฌ์„ฑ๋œ ๋ฐฐ์—ด
        int[] arr = new int[10];
        
        for(int i = 0; i < arr.length; i++) {
        	int tmp = (int)(Math.random() * code.length);
            arr[i] = code[tmp];
        }
        
        System.out.println(Arrays.toString(arr));
    }
}

// console
// [-1, 11, 11, -1, 11, -1, -4, 3, 6, 6]	-> ์‹คํ–‰ํ•  ๋•Œ ๋งˆ๋‹ค ๋‹ฌ๋ผ์ง
  • ์ •๋ ฌํ•˜๊ธฐ(sort)
class ArrayEx10 {
	public static void main (String[] args) {
		int[] numArr = new int[10];
        
        for(int i = 0; i < numArr.length; i++) {
        	System.out.print(numArr[i] = (int)(Math.random() * 10));	
        }
        System.out.println();
        
        for(int i = 0; i < numArr.length; i++) {
        	boolean changed = false;	// ์ž๋ฆฌ๋ฐ”๊ฟˆ์ด ๋ฐœ์ƒํ–ˆ๋Š”์ง€ ์ฒดํฌ
            
            for(int j = 0; j < numArr.length-1; j++) {
            	if(numArr[j] > numArr[j+1]) {
                	int temp = numArr[j];
                    numArr[j] = numArr[j+1];
                    numArr[j+1] = temp;
                    changed = true;
                }
            }
            if(!changed) break;
            
            for(int k = 0; k < numArr.length; k++)
            	System.out.print(numArr[k]);
            System.out.println();
        }
        
        System.out.println();
    }
}

// console
/*
7700371228
7003712278
0037122778
0031227778
0012237778
*/
  • ๋นˆ๋„์ˆ˜ ๊ตฌํ•˜๊ธฐ
class ArrayEx11 {
	public static void main (String[] args) {
		int[] numArr = new int[10];
        int[] counter = new int[10];
        
        for(int i = 0; i < numArr.length; i++) {
        	numArr[i] = (int)(Math.random() * 10);
            System.out.print(numArr[i]);
        }
        System.out.println();
        
        for(int i = 0; i < numArr.length; i++) {
        	counter[numArr[i]]++;
        }
        
        for(int i = 0; i < numArr.length; i++) {
        	System.out.println(i + "์˜ ๊ฐœ์ˆ˜: " + counter[i]);
        }
    }
}

// console
/*
1188178062
0์˜ ๊ฐœ์ˆ˜: 1
1์˜ ๊ฐœ์ˆ˜: 3
2์˜ ๊ฐœ์ˆ˜: 1
3์˜ ๊ฐœ์ˆ˜: 0
4์˜ ๊ฐœ์ˆ˜: 0
5์˜ ๊ฐœ์ˆ˜: 0
6์˜ ๊ฐœ์ˆ˜: 1
7์˜ ๊ฐœ์ˆ˜: 1
8์˜ ๊ฐœ์ˆ˜: 3
9์˜ ๊ฐœ์ˆ˜: 0
*/

๐Ÿ’– Wrapper Class

์ผ๋ฐ˜ ์ž๋ฃŒํ˜•์„ class๋กœ ๋งŒ๋“ค์–ด ๋†“์€ ๊ฒƒ
8๊ฐœ์˜ ๊ธฐ๋ณธํ˜•์„ ๊ฐ์ฒด๋กœ ๋‹ค๋ค„์•ผํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ํด๋ž˜์Šค

<์ผ๋ฐ˜ ์ž๋ฃŒํ˜•>		<wrapper class>
boolean			  Boolean
byte		 	  Byte
short		      Short
int			     *Integer			
long			  Long
float			  Float
double		     *Double			
char			 *Character
char[]			  String			

ํ˜•์‹

ํด๋ž˜์Šค๋ช… ๋ณ€์ˆ˜(ํด๋ž˜์Šค) = new ํด๋ž˜์Šค๋ช…();
ํด๋ž˜์Šค๋ช… ๋ณ€์ˆ˜(ํด๋ž˜์Šค) = ๊ฐ’;

์˜ˆ์‹œ

  • Integer
// ๋ฌธ์ž์—ด -> ์ˆซ์ž
String numStr = "123";
int number = Integer.parseInt(numStr);
System.out.println("number = " + number);

// ์ˆซ์ž -> ๋ฌธ์ž์—ด
Integer oNumber = 12345;
// String str1 = oNumber.toString();
String str1 = oNumber + "";
System.out.println("str1 = " + str1);

// 10์ง„์ˆ˜ -> 2์ง„์ˆ˜(๋ฌธ์ž์—ด)
int number1 = 67;
String str2 = Integer.toBinaryString(number1);
System.out.println("str2 = " + str2);

// 10์ง„์ˆ˜ -> 16์ง„์ˆ˜(๋ฌธ์ž์—ด)
String str3 = Integer.toHexString(number1);
System.out.println("str3 = " + str3);

// 2์ง„์ˆ˜ -> 10์ง„์ˆ˜
int num2 = Integer.parseInt(str2, 2);
System.out.println("num2 = " + num2);

// 16์ง„์ˆ˜ -> 10์ง„์ˆ˜
int num3 = Integer.parseInt(str3, 16);
System.out.println("num3 = " + num3);

// console
/*
number = 123
str1 = 12345
str2 = 1000011
str3 = 43
num2 = 67
num3 = 67
*/
  • String : ๋ฌธ์ž์—ด์˜ ์ €์žฅ, ํŽธ์ง‘, ์ •๋ณด์ทจ๋“
String str4 = "";	// ์ดˆ๊ธฐํ™”
System.out.println(str4);

String str5 = new String("hello");
String str6 = "world";

// ๋ฌธ์ž์—ด ํ•ฉํ•˜๊ธฐ
String str7 = str5 + str6;
System.out.println(str7);

String str8 = str5.concat(str6);	// connection catch
System.out.println(str8);

// ๋ฌธ์ž์—ด ๋น„๊ต
String str9 = "world";
String str10 = "world";

boolean b = str9.equals(str10);
System.out.println("b = " + b);

// ๋ฌธ์ž์—ด์˜ ์œ„์น˜
String str11 = "abcabcabc";
int n = str11.indexOf("c");
System.out.println("n = " + n);

int n1 = str11.lastIndexOf("c");
System.out.println("n1 = " + n1);

// ๋ฌธ์ž์—ด์˜ ๊ธธ์ด
int len = str11.length();
System.out.println("len = " + len);

// ๋ฌธ์ž์—ด์˜ ์ˆ˜์ •
String str12 = "A*B*C*D";
String replaceStr = str12.replace("*", "");
System.out.println(replaceStr);

// ๋ฌธ์ž์—ด ์ž๋ฅด๊ธฐ
String str13 = "ํ™๊ธธ๋™-24-2001/10/16-์„œ์šธ์‹œ";

// ๋ฒ”์œ„
String subStr = str13.substring(4, 6);	// 4~5
System.out.println(subStr);

subStr = str13.substring(7);	// 7~๋
System.out.println(subStr);

// token(=๊ธฐํ˜ธ)
String split[] = str13.split("-");	// ์ง€์ •ํ•œ ๊ตฌ๋ถ„์ž๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฌธ์ž์—ด๋กœ ๋‚˜๋ˆ”
System.out.println(split.length);

System.out.println(split[0]);
System.out.println(split[1]);
System.out.println(split[2]);
System.out.println(split[3]);

// (์•ž๋’ค)๊ณต๋ฐฑ์„ ์ œ๊ฑฐ
String str14 = "  java java   java     ";
String trimStr = str14.trim();
System.out.println(trimStr);

// ?๋ฒˆ์งธ์ธ์ง€ ์ˆซ์ž๋ฅผ ๋„ฃ์œผ๋ฉด ํ•œ๊ฐœ์˜ ๋ฌธ์ž๋ฅผ ๋Œ๋ ค์ค€๋‹ค
String str15 = "๊ฐ€๋‚˜๋‹ค๋ผ๋งˆ";
char c1 = str15.charAt(2);
System.out.println("c1 = " + c1);

// ๋ฌธ์ž์—ด (๋น„๊ต)ํƒ์ƒ‰
String str16 = "์„œ์šธ์‹œ ๊ฐ•๋‚จ๊ตฌ ์—ญ์‚ผ๋™";
boolean b1 = str16.contains("๊ฐ•๋‚จ");	// "๊ฐ• ๋‚จ"์ผ ๊ฒฝ์šฐ false
System.out.println(b1);

// console
/*

helloworld
helloworld
b = true
n = 2
n1 = 8
len = 9
ABCD
24
2001/10/16-์„œ์šธ์‹œ
4
ํ™๊ธธ๋™
24
2001/10/16
์„œ์šธ์‹œ
java java   java
c1 = ๋‹ค
true
*/
profile
๐Ÿฆ‹๊ฐœ๋ฐœ ๊ณต๋ถ€ ๊ธฐ๋ก๐Ÿฆ‹

0๊ฐœ์˜ ๋Œ“๊ธ€

๊ด€๋ จ ์ฑ„์šฉ ์ •๋ณด