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
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
Key : Value 형태로 데이터를 저장한다. (파이썬의 Dictionary 와 흡사하다.)
HashMap
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
자료형을 명시적으로 지정하고 싶을 때 사용한다.
제한적이지만 안정성을 높이고 불필요한 형변환을 줄여준다.
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}