728x90

JAVA 33

[프로그래머스] 문제별 생각 포인트 (계속 추가됨.)

📍 스택/큐올바른 괄호방법1 : StringBuilder 사용 StringStringBuilder타입 불변(immutable) 객체 가변(mutable) 배열 문자열 저장String 객체 생성내부적으로 가변 배열을 사용해서 문자 저장문자열 수정수정할 때마다 새로운 String 객체를 생성기존의 배열을 수정대량의 문자열 조작계속해서 문자 String객체를 생성해야하기 때문에, 메모리 소비가 증가하고 성능이 저하기존의 배열을 수정해서 조작더보기String s = "aa"; // "aa"라는 새로운 String 객체가 생성되고, s가 이 객체를 참조String c = "bb"; // "bb"라는 새로운 String 객체가 생성되고, c가 이 객체를 참조s = s + c; // s에 "aa" + "bb"를 ..

[java] 문자열 (String , StringBuffer , StringBuilder)

📍 자바의 문자열 (String)이뮤터블 객체 :: 값을 변경할 수 없는 객체시간 복잡도 관점에서 사용 시 주의해야 할 필요가 있음.** 기존 객체를 수정하는 게 아니라,, 새로운 객체를 반환함.System.identityHashCode(); --> 메서드는 객체를 특정할 수 있는 식별값을 반환.String s= "abc";System.out.println(System.identityHashCode(s)); // 180203s += "def";System.out.println(System.identityHashCode(s)); // 504922// s 가 다른 객체가 됌.    -- 코딩가딩가 님 블로그 가져옴.   📍  StringBuilder (java.lang.StringBuilder) 생성자S..

JAVA 2024.10.04

[프로그래머스] 스택/큐 - 기능개발

📍 int [] intArr = new int[5];{ 0, 0, 0, 0, 0 }intArr[1]++;  -->  intArr[1] = 1;  📍 String [] strArr = new String[5];{ null, null, null, null, null }strArr[1]++;  --> 문자열은 숫자가 아니므로, 이 연산은 컴파일 오류를 발생시킴.   📍 double [] doubleArr = new double[5];{ 0.0, 0.0, 0.0, 0.0, 0.0 }doubleArr[1]++;  --> doubleArr[1] = 1.0;  더보기doubleArr[0] = 0.0; doubleArr[1] = 1.0; // 여기에서 증가 doubleArr[2] = 0.0; doubleArr[3..

[프로그래머스] 정렬 - K번째수

📍 생각포인트2차원 배열은 commands[0][1] 이런식으로 표현된다는 거.Arrays.copyOfRange(복사할 원본 배열, 복사 시작 인덱스, 복사 종료 인덱스);더보기  int[] intArr = new int[] {1, 2, 3, 4, 5};int[] intArrCopy = Arrays.copyOfRange(intArr, 2, 4);for(int i : intArrCopy) System.out.println(i);// 출력/*34*//* 사실상 Arrays.copyOfRange 는 이렇게 구성된다고 생각할 수 있다.int[] tempCopyArr = new int[4-2];int k = 0;for(int i=2 ; i 출처: https://romcanrom.tistory.com/48 [Se..

[프로그래머스] Hash - 완주하지 못한 선수

📍 생각 포인트.Hash 의 특징을 활용해야함.Hash 는 동일 Key가 있으면, 그 Key 를 덮어쓰기 한다는 점.map.getOrDefault(가져올 키, 디폴트 값)map.put( key, map.getOrDefault(key, 0) + 1 )map 에 이미 key 가 있다면? --> 그 key 의 value 를 가져와서 +1 한다.map 에 key 가 없다면? --> map.put(key, 0+1) 을 하겠다. import java.util.*;class Solution { private String rtnKey = ""; public String solution(String[] participant, String[] completion) { String answe..

[개린이 Java지식] toString() 오버라이딩 ( 객체=객체.toString() )

📍객체=객체.toString() 과 같은 값이 나온다...?! 둘 다 호출해보면 같은 값이 나온다. 기본의 상태에서는 객체의 이름과 객체 주소값이 나온다. class1.Student@23fc625e 이는 컴파일러가 객체만 출력할 경우, 자동으로 toString()을 붙여서 컴파일하기 때문. 예시) 📍메인 클래스 public class ClassStart1 { public static void main(String[] args) { Student student1 = studentFnc("1학생1", 15, 90); System.out.println("객체 출력 :: " + student1); // class1.Student@23fc625e System.out.println("toString :: " + s..

JAVA 2024.04.09

[개린이 Java지식] 메서드 시그니처 (method signature)

📍메서드 시그니처(method signature) ? 메스드 이름 + 메개변수 타입(순서포함) 의 조합 자바에서 메서드를 구분할 수 있는 고유한 식별 기준. ★★ 반환 타입은 시그니처(고유한 식별 기준)에 포함되지 않음. 📍 메서드 시그니처가 중요한 이유 ? 오버로딩 때문. 같은 이름을 가진 메서드라도, 메서드 시그니처가 다르면 다른 것이라 인식함. 그렇게 다르게 인식된 메서드를 오버로딩 할 수 있게 하기 위함. public int addFunc(int x, int y){ ... } // true public int addFunc(int x, double y){ ... } // true public int addFunc(double x, int y){ ... } // true public Double a..

JAVA 2024.04.08

[java] 프로시저 호출 (스프링 ❌) (➕ 프로시저 호출 시, java NullPointerException 발생)

[2023.12.24]자바에서 프로시져 호출하는 것을 알고 있는가? ⭕️오라클에서 프로시저를 exec로 실행, 출력이 잘 되는가? ⭕️자바에서 프로시저 호출할 때, 변수값을 잘 넣었는가?⭕️근데 자꾸 왜 java null pointer exception이 날까??🤬🤬🤬cn = ds.getConnection();생각없이 적다가,,,, db 커넥션을 안 적음.. 커넥션 안 쓰니까 갑자기 널포인트가 나네…; —————-—————-—————-—————-—————-—————-—————-—————-—————-—————-—————-—————- http://it-archives.com/221477871200/ [ORACLE] 오라클 프로시저 작성 (매개변수 OUT 이 존재하는 프로시저 SELECT 방법) – 흑곰의 유..

JAVA 2023.12.21
728x90