분류 전체보기

    [TIL] Getter와 Setter. 왜 쓸까?

    > Getter와 Setter에 대한 내 과거의 생각 Getter와 Setter를 쓰는 이유 Getter와 Setter에 대한 내 과거의 생각 자바로 키오스크를 구현했을 때나, 호텔 예약 프로그램을 구현했을 때나 드는 생각이 있었다. 왜 Getter와 Setter를 쓰는 것인가. 내가 헷갈린 이유는 이렇다. 아래 코드를 보자. name, company를 필드로 가지는 Car 클래스가 있다. public class Car { String name; String company; public Car( String name, String company ) { this.name = name; this.company = company; } public String getName() { return name; } }..

    [TIL] 프로그래머스 - 최댓값과 최솟값 ( 느려지게 하는 범인 찾기 )

    > 문제 설명 첫 번째 시도 코드 두 번째 시도 코드 나보다 빨리 푼 사람의 코드 원인 찾기 문제 해결 후 마지막 코드 문제 설명 문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. s에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요. 예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다. 첫 번째 시도 코드 s를 split 메서드를 사용하여 String배열로 만든 뒤, 각 원소의 최댓값과 최솟값을 for문, Math.min(), Math.max() 메서드를 이용하여 알아내였다. 마지막에는 String answer = ""에 concat을 해서 re..

    [WIL] 230605 ~ 230611

    > 목표 달성 여부 이번 주 내가 한 것 회고 다음 주 목표 목표 달성 여부 ❓ - 팀 과제 성공적으로 끝내기 ✅ - 팀원들 모두 깃에 익숙해지도록 하기 ✅ - 스터디 월, 수, 금 잘 진행하기 - 코드 짜고 발표 준비 해 볼 것 ing - 주말에 자바 종합반 4, 5주차 듣기(오늘 다 듣기!!) ✅ - TIL 열심히 쓰기 ✅ - 매일 코딩테스트 한 문제 이상 풀기(쉬운 난이도라도 차근차근) ❌ + ) 앨리스 책 읽기!! ( 언제 읽지..? ) 이번 주 내가 한 것 1. 메모장 프로젝트 [Java] HI5조 - 메모장 프로젝트 (6/2 - 6/5) > * 프로젝트 깃허브 레포지토리 주소 * 메모장 프로젝트의 대략적인 방향 * 최종 클래스 다이어그램 * 기능 소개 * 문제와 해결 * 느낀 점 프로젝트 깃허..

    [TIL] Git reset & revert 연습

    [TIL] Git reset & revert 연습

    > 1. git reset과 revert 연습의 필요성 2. git reset --soft 3. git reset --mixed ( git reset ) 4. git reset --hard 5. git revert 1. git reset과 revert 연습의 필요성 이번 프로젝트 당시 팀원이 본인 브랜치를 마스터 브랜치에 머지를 했는데, 충돌 해결을 그 전 버전으로 해버리셔서 내가 한 작업이 일부 날아가는 일이 있었다. 그 때는 제출 시간을 약간 넘긴 뒤라 조금 정신이 없어서 일단 history를 보며 다시 수정을 하게 되었다. 지금 생각하면 마스터 브랜치의 커밋을 hard로 되돌려 작업 디렉터리를 돌린 다음에 다시 팀원의 브랜치를 머지했으면 됐을 간단한 일이었는데 그 순간에는 이게 훨씬 어려운 일인거 ..

    [TIL] I/O Study - ByteArrayInputStream 예제 01

    > 1. I/O와 스트림 2. InputStream, OutputStream 3. 코드 보면서 ByteArray 입출력스트림 익히기 4. 후기 ※ 책에 나오는 예제로 공부하였다. 1. I/O와 스트림 IO란? Input과 Output의 약자로 입력과 출력, 간단히 줄여서 입출력이라고 한다. 입출력은 컴퓨터 내부 또는 외부의 장치와 프로그램간의 데이터를 주고받는 것이다. 키보드로부터 데이터를 입력받는 것, 화면에 데이터를 출력하는 것이 입출력의 예라고 할 수 있다. Stream이란? 스트림은 데이터를 운반하는데 사용되는 연결통로이다. 스트림의 '물줄기'라는 뜻처럼 단방향만 가능하다! 입력에 필요한 InputStream과 출력을 위한 Output Stream이 있다. 2. ..

    [Java] HI5조 - 호텔 예약 프로그램 프로젝트 (6/6 - 6/9)

    [Java] HI5조 - 호텔 예약 프로그램 프로젝트 (6/6 - 6/9)

    > * 프로젝트 깃허브 레포지토리 주소 * 프로젝트 스크린 다이어그램 * 최종 클래스 다이어그램 * 기능 소개 * 문제와 해결 * 느낀 점 프로젝트 깃허브 레포지토리 주소 GitHub - JisooPyo/HI5_Project Contribute to JisooPyo/HI5_Project development by creating an account on GitHub. github.com 프로젝트 스크린 다이어그램 최종 클래스 다이어그램 기능 소개 BookProgram 예약프로그램. 거의 모든 클래스를 참조한다. onProgram() -> 예약프로그램을 켠다 -> 번호 선택에 따라 다른 화면으로 전환 1. guestScreen():Guest -> bookingScreen(Guest) : 생성한 Guest ..

    [Java] HI5조 - 메모장 프로젝트 (6/2 - 6/5)

    [Java] HI5조 - 메모장 프로젝트 (6/2 - 6/5)

    > * 프로젝트 깃허브 레포지토리 주소 * 메모장 프로젝트의 대략적인 방향 * 최종 클래스 다이어그램 * 기능 소개 * 문제와 해결 * 느낀 점 프로젝트 깃허브 레포지토리 주소 GitHub - JisooPyo/HI5_Project Contribute to JisooPyo/HI5_Project development by creating an account on GitHub. github.com 메모장 프로젝트의 대략적인 방향 최종 클래스 다이어그램 기능소개 MemoProgram 메모장을 실행시키는 프로그램 onMemo() : 메모장을 실행시킨다. 번호 선택에 따라 다른 화면으로 전환한다. 1. inputScreen() : 메모장을 입력할 수 있는 화면 2. printAllnotes() : 모든 메모 목록을..

    [TIL] 잘못 알았던 재귀함수

    Scanner로 String 값을 입력 받아 저장하고 다시 int 값을 받아서 그 값이 1이면 String 값을 return 하고, int 값이 2이면 다시 메서드를 호출하여 String 값을 재입력 받아 저장하는 구조의 메서드를 구현해보려고 했다. 코드를 한 번 보자. 근데 이상하다. 아래 중괄호를 보면 빨간 줄이 그어져 있는 것을 볼 수 있다. 무엇이 잘못되었는지 확인하니 return 값을 넣지 않았단다. 함수 전체에 return 값을 주던지, else에 return값을 따로 주어야 한다고 한다. 여기서 사실 이상했다. check가 1일 경우 return을 하고 그게 아니면 다시 되돌아가는 재귀방식을 썼는데 왜 return값을 필요로 할까 싶으면서도 일단은 printName() 밑에 return 값을..

    [WIL] 230529 ~ 230604

    > 목표 달성 여부 이번 주 내가 한 것 회고 다음 주 목표 목표 달성 여부 ✅ 매일 프로그래머스 문제 한 문제씩 풀기(이제 LV.1이 몇 개 남지 않았다.) ✅ 캠프에서 내준 과제 열심히 하기. 이건 열심히 했다! 프로젝트를 엎기도 많이 엎었고 return 값이나 데이터를 토스하는 방식이나 자료구조를 정하는게 어려워서 시간을 많이 소비했다. ✅ 바빠도 TIL 적으려 노력하기! 이번 주는 과제 때문에 삽질의 연속이었음에도 불구하고 TIL을 적으려 노력했다 ❌자바 문법 종합반 끝까지 다 듣기. 개인 과제가... 너무 많이 엎어졌다.이번 주는 팀 과제라서 주중에 보기는 다 보기는 힘들 것 같다.. 주말에 열심히 하면 어떻게 되겠지! ❌ 토끼책을 거의 읽어보지 못했다. 하지만 앞부분에 객체에 대한 설명이 잘 ..

    [TIL] contain 메서드 공부하기

    * 목차 메서드를 공부하게 된 이유 contain 메서드에 대하여 contain 메서드를 공부하게 된 이유 개인 과제를 진행하면서 List에서 String[]이 포함되어 있는지 확인해야 하는 작업이 필요했는데, 다른 문서에서 작업을 해 보고 코드를 옮겨오려고 테스트로 코드를 짜보고 있는 와중에 public static void main( String[] args ) { String[] a = { "a", "b", "c", "d" }; ArrayList list = new ArrayList(); list.add( new String[] { "a", "b", "c", "d" } ); System.out.println( list.contains( a )); // fa..