본문 바로가기
728x90

전체 글410

[JAVA] static 키워드 static '정적인', '정적의'라는 뜻으로 전역변수나 메서드에 사용할 수 있다. 객체는 생성될 때 각각의 변수를 가지고 있다. 각 객체에 변수를 선언할 때마다 메모리에 할당해야한다. 또한 각 객체에 선언한 변수의 값을 모두 증가시켜야 하는 경우가 발생한다면 일일이 값을 변경해주어야하는 불편함이 있다. 이러한 문제는 static 키워드를 사용을 통해 해결할 수 있다. static 키워드를 사용하면 메모리의 공유를 통해 높은 효율성을 얻을 수 있다. static 변수 정적 변수라고 하며, static 키워드를 사용하여 선언한 변수는 메모리 할당이 한 번만 이루어지며, 해당 클래스의 모든 객체들에 의해 공유된다. 따라서 공통적으로 같은 값을 유지해야 하는 변수에 사용하면 좋다. static 메서드 정적 메.. 2022. 9. 19.
[JAVA] 메서드 오버로딩(Overloading)과 오버라이딩(Overriding) 메서드 오버로딩(Method Overloading) 하나의 클래스 안에 같은 이름의 메서드를 여러 개 정의하는 것을 뜻한다. 메서드 오버로딩을 통해 하나의 메서드명으로 여러 경우의 수를 해결할 수 있고, 비슷한 기능을 가진 이름이 다른 여러 개의 메서드를 정의하여 코드의 가독성을 해치는 일을 방지할 수 있다. 조건 조건 1) 같은 이름의 메서드명을 사용해야 한다. 조건 2) 매개변수의 개수나 타입이 달라야 한다. 기타 리턴값을 다르게 하는 것으로 오버로딩이 가능하지 않다. 접근제어자를 다르게 하여 오버로딩 할 수 있다. 즉, 접근제어자를 다르게 하는 것으로 오버로딩이 가능하지 않다. 메서드 오버로딩의 대표적인 예로는 println()이 있다. plintln 메서드 안의 매개변수에 int, String, .. 2022. 9. 19.
객체 정렬 - Comparator Arrays.sort(T[] a, Comparator 2022. 9. 18.
Arrays.toString() Arrays.toString() : 다른 데이터 타입의 배열을 String으로 바꿈 int arr[] = {1, 2, 3, 4, 5}; System.out.println(Arrays.toString(arr)); // [1, 2, 3, 4, 5] 2022. 9. 18.
System.arraycopy() System.arraycopy() : 배열을 다른 배열에 카피 System.arraycopy(arr1, 0, arr2, 0, 10); // arr1 배열의 인덱스0부터 10개를 복사해서 arr2의 0부터 순서대로 붙여넣음 2022. 9. 18.
.split() .split() : 문자열을 특정 기준으로 조각냄 public class Main { public static void main(String[] args){ String str = "i am ironman."; String[] string; string= str.split(" "); // " " 공백 "," 콤마 기준으로 나뉘어진다. "\\.", "\\|" 이미 기능이 있는 것은 역슬래시 두번쓰면 됨 for(String s : string) { // enhanced for 문에서 좌항에는 배열의 요소값이 들어가기 때문에 해당하는 해당하는 데이터 타입으로 선언해줘야함 System.out.println(s); //["i", "am", "ironman"] } } } 2022. 9. 18.
[JAVA] 배열 int[] a = new int[] {1, 2, 3, 4, 5}; // 배열의 생성과 동시에 초기화 // new int[]는 생략할 수 있다. // 길이가 0인 배열을 생성하는 방법 int[] b = new int[0]; int[] c = new int[] {}; int[] d = {}; // new int[] 생략 가능 // 빈 배열 리턴하는 법 return new int[0]; return new int[] {}; 2022. 9. 17.
[JAVA] BufferedReader & BufferedWriter BufferedReader 입력 스트림의 문자를 읽는 함수로, 문자들을 버퍼에 저장하고 읽기 때문에(모아뒀다가 한 번에 처리) 처리 속도가 매우 빠르다. Scanner의 기능과 유사하다. String 타입으로만 받을 수 있어 형변환이 필요하다. 관련 메서드 메서드 설명 .readLine() 입력값을 한 줄로 받아 String으로 바꾼다. .read() 문자 하나를 읽어 그에 해당하는 ASCII 10진수 int값으로 리턴 BufferedWriter system.out.print의 기능과 유사하다. 처리 속도가 훨씬 빠르다. 관련 메서드 메서드 설명 .write() 개행을 위해서는 .write("\n")을 써야한다. .newLine() 개행을 함 .flush() 모아둔 데이터를 모두 출력 .close() 스.. 2022. 9. 17.
728x90