728x90

Java 18

[JAVA]StringBuilder

📋 String- String클래스는 불변이다.  - 불변인 String 클래스의 단점: 문자를 더하거나 변경할 때마다 계속해서 새로운 객체를 생성해야함- 문자를 자주 더하거나 변경해야 하는 상황에 더 많은 String객체를 만들고 GC해야함 ===> 컴퓨터의 CPU, 메모리 자원을 더 많이 사용하게 됨 => 문자열을 더 자주 변경할수록 시스템의 자원을 더 많이 소모한다. 📋 GC(Garbage Collection)- 자바 가상 머신의 힙 영역에서 동적으로 할당했던 메모리 중 필요 없게 된 메모리 객체를 모아 주기적으로 제거하는 프로세스 📋 StringBuilder- 가변- StringBuilder 객체 안에서 문자열을 추가, 삭제, 수정할 수 있음 (이 때마다 새로운 객체를 생성하지 않음)===>..

Coding/JAVA 2024.09.18

[JAVA]NullPointerException

📋 NullPointerException이란?- 이름 그대로 null을 가리킬 때에 발생하는 예외이다. null은 없다는 뜻이므로 결국 주소가 없는 곳을 찾아갈 때 발생하는 예외이다.- 객체를 참조할 때는, .(dot)을 사용하여 참조값을 사용해 해당 객체를 찾아갈 수 있다. 그러나 참조값이 null이면 값이 없다는 뜻이므로, 찾아갈 수 있는 객체(인스턴스)가 없다. NullPointerException은 이처럼 null에 .을 찍었을 때에 발생한다. 📋 예제1 (지역변수가 null인 경우)public class NullMain2 { public static void main(String[] args) { Data data = null; data.value = 10; /..

Coding/JAVA 2024.08.23

[JAVA] 기본형과 참조형 - 변수 대입

✍🏻 자바는 항상 변수의 값을 복사해서 대입한다. 기본형과 참조형 모두 항상 변수에 있는 값을 복사해서 대입한다. 📋 기본형 대입int a = 10;int b = a; // a = 10➡️ 변수에 값을 대입하더라도 실제 사용하는 값이 변수에 바로 들어있기 때문에 해당 값만 복사해서 대입 📋 참조형 대입Student s1 = new Student();Student s2 = s1;➡️ 실제 사용하는 객체가 아니라 객체의 위치를 가리키는 참조값만 복사됨  📋 코드 예시package ref;public class VarChange2 { public static void main(String[] args) { Data dataA = new Data(); dataA.value ..

Coding/JAVA 2024.08.22

[Lv.0] 특별한 이차원 배열1

📋 문제정수 n이 매개변수로 주어질 때, 다음과 같은 n × n 크기의 이차원 배열 arr를 return 하는 solution 함수를 작성해 주세요.arr[i][j] (0 ≤ i, j  📋 입출력 예시  📋 풀이class Solution { public int[][] solution(int n) { // 배열 크기 선언 int[][] answer = new int[n][n]; // 행index == 열index => 1로 변경 for(int i=0; i - 배열 크기를 선언한다 - 입출력 예시를 보니 행 index와 열 index가 같으면 (ex)0행0열/ 1행1열/ 2행2열) 그 인덱스에 해당하는 값을 1 로 변경시켜야함- 반복문 사용  📋..

[JAVA]2차원 배열 예제 - 학생 점수 평균 구하기

📋 입력 public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int[][] scores = new int[4][3]; // 4 = 학생 4명 / 3 = 과목 3개 String[] subjects = {"국어","영어","수학"}; //입력 for(int i=0; i - 학생이 4명이고 과목이 3개니까 int[4][3]의 4행 3열로 배열 선언 📋 출력 //출력 for(int i=0; i - 0,1,2,3 인덱스 총 4명 반복문으로 돌리기- 과목 3개는  0,1,2 인덱스 총 3개로 돌리기- 각 i, j로 인덱스 선언하여 행과 열에 ..

Coding/JAVA 2024.08.02

[Lv.0] A 강조하기

📋 문제문자열 myString이 주어집니다. myString에서 알파벳 "a"가 등장하면 전부 "A"로 변환하고, "A"가 아닌 모든 대문자 알파벳은 소문자 알파벳으로 변환하여 return 하는 solution 함수를 완성하세요. 📋 입출력 예시  📋 실패 풀이class Solution { public String solution(String myString) { // StringBuilder 생성 StringBuilder answer = new StringBuilder(); for(int i = 0; i  📌 StringBuilder StringBuilder answer = new StringBuilder();  작은따옴표('): 단일 문..

[Lv.0] 문자열 앞의 n글자

📋 문제문자열 my_string과 정수 n이 매개변수로 주어질 때, my_string의 앞의 n글자로 이루어진 문자열을 return 하는 solution 함수를 작성해 주세요. 📋 입출력 예시 📋 풀이class Solution { public String solution(String my_string, int n) { String answer = ""; for(int i=0;i -substring(startIndex,endIndex) 사용= 처음부터 n번째 글자까지니까  0(startIndex) ~ n(endIndex)