자료형은 변수의 종류, 단위를 뜻하며 변수의 종류에 따라 데이터의 타입과 크기가 다르다.
숫자 형태의 자료형
종류 | 예 |
---|---|
정수 | int intNum = 10; long longNum = 2147483648L; |
실수 | float floatNum = 1.23f; double doubleNum = 1.23; |
2/8/16진수 | int numBase2 = 0b1100; int numBase8 = 014; int numBase16 = 0xC; |
💡2/8/16진수의 형태로 출력시
System.out.println("0b" + Integer.toBinaryString(numBase2));
System.out.println("0" + Integer.toOctalString(numBase8));
System.out.println("0x" + Integer.toHexString(numBase16));
참과 거짓을 나타내는 자료형
boolean isMinus = true;
boolean isOk = false;
한 개의 문자 표현에 사용하는 자료형
char keyFirst = 'a';
char keyLast = 'z';
문자들로 이루어진 집합
String s1 = "Hello World!";
String s2 = "012345";
💡문자열 메소드
equals, indexOf, replace, substring, toUpperCase
System.out.println(s1.equals(s2));
System.out.println(s1.indexof("!"));
String s3 = s1.replace("Hello", "Bye");
System.out.println(s2, substring(0,3));
System.out.println(s1.toUpperCase);
StringBuffer
를 사용하는 것이 좋다.StringBuffer sb1 = new StringBuffer("Hello");
💡StringBuffer 메소드
append, insert, substring
sb1.appned(" World");
s1.insert(11, "!");
s1.substring(0,5); //결과 "Hello"
많은 수의 데이터를 담을 수 있는 자료형(엄밀히 말하면 자료구조)
int[] myArray1 = {1, 2, 3, 4, 5};
char[] myArray2 = {'a', 'b', 'c', 'd', 'e'};
System.out.println(myArray1[0]) //0번째 index의 값(1) 출력
System.out.println(myArray2[2]) //2번째 index의 값(c) 출력
String[] myArray3 = new String[3];
myArray3[0] = "Hello";
myArray3[1] = " ";
myArray3[2] = "World!";
System.out.println(myArray3[0] + myArray3[1] + myArray3[2]);
ArrayList l1 = new ArrayList();
l1.add(1);
💡List 메소드
add, get, size, remove, clear, sort, contains
l1.add(2);
l1.add("World");
l1.add(0, 1);
System.out.println(l1.get(3));
System.out.println(l1.size());
System.out.println(l1.remove(0)); //0번 index의 값을 제거
System.out.println(l1.remove(Integer.valueOf(1))); //값이 '1'인 데이터 제거
l1.clear();
l2.sort(Comparator.naturalOrder()); //오름차순 정렬
l2.sort(Comparator.reverseOrder()); //내림차순 정렬
System.out.println(l2.contains(1));
HashMap<String, String> map = new HashMap<String, String>();
map.put("strawberry", "10000");
💡Map 메소드
put, get, size, remove, containsKey
map.put("kiwi", "9000");
map.put("fruit", apple");
System.out.println(map.get("kiwi")); //9000이라는 값이 출력
System.out.println(map.get("mango")); //null이 출력
System.out.println(map.size());
System.out.println(map.remove("kiwi")); //키를 지우면 값도 같이 지워진다
System.out.println(map.containsKey("apple")); //true를 출력
ArrayList<String> l1 = new ArrayList<String>();
HashMap<String, Integer> map1 = new HashMap<String, Integer>();
💡Generics 사용예시
ArrayList l2 = new ArrayList(); //제네릭스 사용x
l2.add(1);
l2.add("Hello");
ArrayList<String> l3 = new ArrayList<String>(); //제네릭스 사용o
l3.add(1); //에러
l3.add("World");
HashMap<String, Integer> map2 = new HashMap<>();
map.put(123, "id"); //에러
map.put("apple", 10000);