일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- 개발자 취준
- 리트허브 커밋
- BigO notation
- Programmers 배열의 유사도
- 특정문자 제거하기
- 춥고 더운 우리 집
- 가위바위보 풀이
- 프로그래머스
- 프로그래머스 가위바위보 풀이
- 파이썬 컬렉션
- 프로그래머스 배열 회전시키기
- 2-layered architecture
- 프로그래머스 배열의 유사도 파이썬
- programmers 배열 회전
- leftJoin
- 프레젠테이션 레이어
- 리트허브 사용법
- 리트허브 오류
- 주니어개발자
- 파이썬 특정 문자 제거하기
- 알고리즘
- 프로그래머스 특정 문자 제거하기
- 비지니스 레이어
- 스프링 시스템 구조
- 프로그래머스 가위바위보
- 배열의 유사도 파이썬
- 공선옥
- 슈츠 자막
- collection python
- 춥고더운우리집
- Today
- Total
목록Language/JAVA (7)
기억보다 기록을
[Item 12] toString을 항상 재정의하라 # 왜? * println(), printf(), + 연산자 등 toString() 메서드는 알게 모르게 많이 불려진다. * System.out.println(phoneNumber)와 같이 작성하면 내부 내용을 볼 수 있으므로 디버깅하기 쉽다. * 만약 사용자에게 값을 보여줘야 할 일이 있을 때도 간단하게 print(phoneNumber)와 같이 넘기기만 하면 toString()은 자동으로 불려진다. 즉, 개발 시 편리하다. # 규약 1) toString은 '간결하면서 사람이 읽기 쉬운 형태의 유익한 정보'를 반환해야 한다. ``` object.toString -> PhoneNumber@adbbd VS Jenney=707-867-5309 ``` 2) 객..
[Item 11] equals를 재정의하려거든 hashCode도 재정의하라 - equals를 구현할 때 hashCode도 함께 만들어야한다. 롬복은 @EqualsAndHashCode 하나의 어노테이션으로 동작한다. hashCode 규약 - equals에 사용되는 정보가 변경되지 않았다면 hashCode는 매번 같은 값을 리턴해야한다. (변경되거나, 애플리케이션을 다시 실행했다면 달라질 수 있다.) - 객체에 대한 equals가 같다면, hashCode의 값도 같아야한다. - 두 객체의 equals가 다르더라도 hashCode의 값을 같을 수 있지만 해시테이블 성능을 고려해 다른 값을 리턴하는 것이 좋다. ``` @Override public int hashCode() { int result = Short..
이펙티브 자바 스터디에서 아이템 10-12 파트를 발표하게 되었다. 해당 부분을 두번 읽었는데, 처음 읽을 때는 무슨소리지? 싶던 내용이 두번째 읽을 땐 '아, 이말이었구나.' 싶은 순간이 생기더라. 물론, 다른이에게 설명할 정도로는 부족하여 이 포스팅을 쓰며 차근차근 정리 후 내 것으로 만드는 시간이 필요하다 (이 책은 어색한 번역체와 불친절하게 느껴지는 예시들이 개선되면 더 좋은 평을 얻을 것 같다ㅎ) 해당 포스팅의 내용은 이펙티브 자바 책과 백기선 개발자의 강의, 그리고 구글링을 통해 구성되었다. 일부 사견을 포함한다. 아이템 10은 '3장 모든 객체의 공통 메서드'의 첫 아이템이다. Object 클래스에서 final이 아닌 메서드 equals, hashcode, toString은 모두 재정의(ov..

✔ 권오흠 교수님의 강의를 보고 정리했습니다. 클래스를 설계도라 부른다면 객체야 말로 그 안에 있는 집이다. 집은 늘 new 명령어로 생성될 수 있다. new 명령어로 객체를 만들면, 그 객체는 고유한 이름을 가질 수 없다. 그래서 우리에겐 참조변수가 필요하다. 그 객체에 접근할 수 있는 주소가 필요하다. (참조한다, 가리킨다라고 표현한다.) 만들어진 객체는 이름이 없어서 참조변수를 하나 만들고 참조변수에 이름을 붙임으로서 만들어진 객체를 사용할 수 있게 된다. 🔻 Example1: Index Maker import java.io.File; import java.io.FileNotFoundException; import java.io.FileWriter; import java.io.IOException;..

권오흠 교수님의 자료구조 강의를 듣고 정리했습니다. 🔺What I learn from this lecture 코드를 작성할 때 어떻게 함수를 호출하고 매개변수를 전달할지를 생각하자 어떻게 전체 프로그램이 할 일을 작고 명료하게 기능적으로 분할하여 구조화할 수 있을지 고민하자 구조화된, structured program의 핵심은 함수를 잘게 쪼개는 것이다. 기능적 분할이 어떻게 이뤄지는지 학습하는 것이 재미있었다. 이는 결국 call by value, call by reference에 대한 이야기로 연결된다 and it also connected to actual parameter, formal parameter return 의 역할은 2개, 함수의 종료와 값의 반환이다. 프로그래밍, 알고리즘을 짤 때 교..
Q/ n개의 음이 아닌 한자리 정수를 입력받아 배열에 저장한다. 이들 중에서 1개 이상의 연속된 정수들을 합하여 얻을 수 있는 소수들 중에서 최대값을 구하여 출력하는 프로그램을 작성하라. A/ package chapter1; import java.util.Scanner; public class code13 { public static void main(String args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] data = new int[n]; for (int i = 0; i < n; i++) data[i] = sc.nextInt(); sc.close(); int max = 0; for (int i = 0; i < n; i..
Q/ n개의 정수를 입력받아 배열에 저장한다. 이 중에서 0개 이상의 연속된 정수들을 더하여 얻을 수 있는 최대값을 출력하는 프로그램을 만들어라 A/ public class code12 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] data = new int[n]; for(int i=0;i