Java 변수와 자료형2

LIM JAEHO·2022년 6월 29일
0

Java 학습

목록 보기
5/19

추가적인 자료형

Array 배열

  • Type : int[], char[], String[]
int[] arr1 = {1, 2, 3, 4};
for (int i = 0; i < arr1.length; i++) {
	System.out.println(arr1[i]);
}

char[] arr1 = {'1', '2', '3', '4'};
for (int i = 0; i < arr1.length; i++) {
	System.out.println(arr1[i]);
}

String[] arr1 = {"abc", "abc", "abc", "abc"};
for (int i = 0; i < arr1.length; i++) {
	System.out.println(arr1[i]);
}

ArrayList 리스트

배열과 비슷하지만 추가로 여러가지 메서드들을 제공한다.

  • Type
    ArrayList
  • method
    • add
    • get
    • size
    • remove
    • clear
    • sort
    • contains
import java.util.ArrayList;
import java.util.Comparator;

ArrayList li1 = new ArrayList();

add

/* argu 1개 */
li1.add(1);
li1.add('a');
li1.add("abc");
System.out.println(li1);		// [1, a, abc]

/* argu 2개 */
li1.add(0, "ABC");				// void 메서드라서 return 값이 없다.
System.out.println(li1);		// [ABC, 1, a, abc]

get

System.out.println(li1.get(0));		// "ABC"

size

System.out.println(li1.size());		// 4

remove

/* index 지우기 */
System.out.println(li1.remove(0));				// "ABC"
System.out.println(li1);						// [1, a, abc]

/* value 지우기 */
System.out.println(li1.remove(Integer.valueOf(0)));		// false
System.out.println(li1);								// [1, a, abc]

clear

li1.clear();					// void 메서드라서 return 값이 없다.
System.out.println(li1);		// []

sort

arr1.add(5);
arr1.add(4);
arr1.add(3);

System.our.println(arr1);					// [5, 4, 3]
arr1.sort(Comparator.naturalOrder());
System.our.println(arr1);					// [3, 4, 5]
arr1.sort(Comparator.reverseOrder());
System.our.println(arr1);					// [5, 4, 3]

참고로 Comparator 를 사용하려면 import 를 해줘야 한다.
contains

System.out.println(arr1.contains(1));		// false
System.out.println(arr1.contains(3));		// true

Map 맵

Key : Value 형태로 데이터를 저장한다. (파이썬의 Dictionary 와 흡사하다.)

  • Type
    HashMap
  • method
    • put
    • get
    • size
    • remove
    • containsKey
HashMap map = new HashMap();

put

map.put("kiwi", 4000);
map.put("apple", 5000);
map.put("mango", 6000);
map.put(123, 5000);
System.out.println(map)		// {kiwi=5000, apple=5000, mango=5000, 123=5000}

get

System.out.println(map.get("apple"));		// 5000
System.out.println(map.get("pear"));		// null

size

System.out.println(map.size());		// 4

remove

System.out.println(map.remove("kiwi"));		// 4000
System.out.println(map.remove("kiwi"));		// null
System.out.println(map);					// {apple=5000, mango=5000, 123=5000}

containsKey

System.out.println(map.containsKey("apple"));		// true
System.out.println(map.containsKey("kiwi"));		// false

Generics 제네릭스

자료형을 명시적으로 지정하고 싶을 때 사용한다.
제한적이지만 안정성을 높이고 불필요한 형변환을 줄여준다.

ArrayList<String> li1 = new ArrayList<>();
li1.add(1);						// error

li1.add("abc");
li1.add("ABC");
System.out.println(map1);		// {kiwi=9000}
HashMap<String, Integer> map1 = new HashMap<>();
map1.put(9000, 9000);			// error

map1.put("kiwi", 9000);
System.out.println(map1);		// {kiwi=9000}
map1.put("kiwi", 8000);
System.out.println(map1);		// {kiwi=8000}
map1.put("kiwi", 8000);
System.out.println(map1);		// {kiwi=8000}

0개의 댓글