Java


✔️ 코플릿을 풀다가 replace() 메서드를 사용할 일이 생겼는데 사용하려고 보니까 replace()를 두 가지로 사용할 수 있었다. replace(CharSequence target, CharSequence replacement) 문자열에서 특정 문자열(target)을 다른 문자열(replacement)로 대체하는 데 사용한다. replace(char oldChar, char newChar) 문자열에서 특정 문자(oldChar)를 다른 문자(newChar)로 대체하는 데 사용한다. String str = "Hello, World!"; String newStr = str.replace('o', 'x'); System.out.println(newStr); // 출력: Hellx, Wxrld! Strin..


🧑🏻💻 자바에서 사용하는 메모리 영역에 대해 간단히 정리 프로그램이 실행되면 JVM은 OS로부터 메모리를 할당받고, 그 메모리를 용도에 따라 여러 영역으로 나누어 관리한다. 🔎 JVM(Java Virtual Machine) - Java 프로그램을 실행시키는 도구(자바 코드로 작성한 프로그램을 해석해 실행) - Java와 OS 사이에서 중개자 역할 - 메모리 관리 기능(Garbage Collector) - 운영체제별로 이해하는 기계어가 다르므로 운영체제별로 다르게 설치 -> JVM을 통해 동일한 결과 얻을 수 있음 - JVM을 거쳐서 실행되기 때문에 실행 속도가 조금 느릴 수 있음 📍 그림 순서를 따라 간단하게 설명하면, Source Code(Hello.java) 파일을 Java Compliler 통해서..

💡 참조변수 this ➡️ 인스턴스 자신을 가리키는 참조변수 ➡️ 인스턴스 메서드(생성자 포함)에서 사용가능 : this는 객체가 생성되어야 사용 가능하기 때문에 클래스 메서드에서는 this 사용할 수 없음 ➡️ 지역 변수와 인스턴스 변수를 구별할 때 사용 💡 this() ➡️ 생성자에서 다른 생성자 호출할 때 사용 : 코드의 중복을 제거하기 위해서 ➡️ 다른 생성자 호출시 첫 줄에서만 사용가능 class Car { String color; String gearType; int door; Car() { // 기본값으로 아래의 값을 넣어주어라 근데 아래의 다른 생성자와 중복되는 코드 color = "white"; gearType = "auto"; door = 4; } Car(String c, String..

💡 str.substring() ➡️ 문자열의 일부를 추출할 때 사용 ➡️ 문자열의 시작 위치부터 끝 위치까지의 일부분을 반환 str.substring(beginIndex) str.substring(beginIndex, endIndex) beginIndex : 추출하려는 하위 문자열의 시작 인덱스, 이 인덱스에 해당하는 문자는 추출된 문자열에 포함 endIndex : 추출하려는 하위 문자열의 끝 인덱스, 이 인덱스에 해당하는 문자는 추출된 문자열에 포함되지 않음 String str = "Hello, World!"; String subStr = str.substring(7, 12); // -> "World"

💡 str.replace(char oldChar, char newChar) ➡️ 문자열(String)에서 특정 문자를 다른 문자로 바꾸는 메서드 ➡️ oldChar와 일치하는 모든 문자를 newChar로 바꾸어 새로운 문자열 반환 String str = "Hello world!" String newStr = str.replace('o', 'O'); System.out.println(newStr); // -> HellO wOrld! 대소문자 구분 O ➡️ 만약 대소문자를 구분하지 않고 바꾸고 싶다면 replaceAll() 메서드 사용

💡Character.getNumericValue() ➡️ 자바에서 문자(char)를 숫자(int)로 변환하는 메서드 ➡️ 해당 문자에 대응하는 십진수 숫자 값을 반환, 만약 해당 문자가 숫자가 아니라면 -1 반환 String str = "Hello123world!"; int sum = 0; for(char ch : str.toCharArray(ch)) { int num = Character.getNumericValue(ch); // 숫자인지 아닌지 판별 if(num != -1) { // 숫자인 경우에는 더해준다. sum += num; } } System.out.println(sum) // -> 6 만약 입력받은 문자열에서 숫자를 뽑아 더한 값을 출력하라고 했을 때, 문자를 숫자로 변환하는 메서드를 사용하..

💡 Arrays.toString() [1, 2, 3, 4, 5] // 2차원 배열인 경우 int[][] arr = {{1,2,3,}, {4,5,6}}; System.out.println(Arrays.toString(arr)); // // 배열 안에 또다른 배열을 가지고 있기 때문에 내부 배열의 첫 번째 주소값들을 차례로 출력 // 만약 2차원 배열의 모든 요소를 출력하고 싶다면 int[][] arr = {{1,2,3,}, {4,5,6}}; System.out.println(Arrays.deepToString(arr)); // [[1, 2, 3], [4, 5, 6]]