멋쟁이 사자처럼 2기 150일간의 기록 19

RandomCalculator 클래스 - 인터페이스의 이해

처음에 만들었던 Calculator 클래스 package cal; /** * 계산기 출력 */ public class Calculate { //public static int a,b; private int a,b; //생성자 - alt + insert public Calculate(int a, int b) { //생성자 : 값을 클래스 안쪽으로 넣어주고 싶을 때 사용 this.a = a; this.b = b; } //메서드 public void plus2() { //인스턴스 메서드 : 생성자 생성하면 매개변수 지워야함 System.out.println(a + b); } public void minus2() { System.out.println(a - b); } public void multiple2() ..

멋쟁이 사자처럼 백엔드스쿨 2기 17일차 D - 134 (자바심화 - 컬렉션, 제네릭)

10월 5일 수요일 1. Git Remote Repository 만들기 2. IntelliJ로 Java Project 빌드 3. 빌드한 프로젝트 Push하기 UserDao public class UserDao { //Data Access Object public void plus(int first, int second) { //인스턴스 메서드 System.out.println(first + second); } public void minus(int first, int second) { System.out.println(first - second); } public void multiple(int first, int second) { System.out.println(first * second); } pu..

CurrencyCnt 자바 화폐 계산 알고리즘

우리 회고 14팀 인규님의 코드이다. import java.util.Scanner; public class Problem3 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("금액을 넣으세요 [숫자입력]"); int money =0; try { money = scanner.nextInt(); if(money%10!=0){ System.out.println("최소 10원단위로 입력해주세요."); return ; } calculateMoney(money); }catch (Exception e){ System.out.println("숫자만 입력하세요 프로그램을 다시 시작해주세..

멋쟁이 사자처럼 백엔드스쿨 2기 16일차 D - 135 (Git, SourceTree 사용방법)

새로운 강사님인 김경록 강사님이 오셨다. 개발 관련 책 집필경험과 현업 프로젝트 경험, 인프런에 지식공유 활동등 다양한 이력이 있는 시니어 개발자 출신 강사님이시다. 개발이 과거에는 소수의 엘리트들만 하는 UFC 격투기 같은 모습이었는데 지금은 다수의 인원들이 각자의 강점과 포지션을 갖고있는 축구와 같은 모습으로 변했다고 하셨다. 오늘 수업을 진행하며 다양한 오류가 발생하였는데 서로서로 그 오류들에 대해 대신 검색을 해주고 전체적인 성장을 도모하는 모습이 너무 보기 좋았다. git add . git commit -m "hello" git push -u origin main -> 인터넷에서 여러사람이 이용할 수 있는것이 '리모트 리포지토리' -> 인텔리제이는 JPA가서 '메서드 펄'이라는 기능이 유용하기 ..

단순 삽입정렬이란? InsertionSort

package Mission4; import java.util.Scanner; /** * N개의 숫자가 입력되면 오름차순으로 정렬하여 출력하는 프로그램을 작성하세요. * 정렬하는 방법은 '삽입정렬'입니다. */ public class InsertionSort { public int[] insertionSort(int num, int[] arr) { //아직 정렬되지 않은 부분의 첫 번째 요소를 정렬된 부분의 알맞은 위치에 삽입 : num - 1회 반복 for (int i = 0; i < num - 1; i++) { //배열의 요소(인덱스가 i인 요소)를 꺼내 알맞은 위치에 삽입 int tmp = arr[i]; /** * 아래의 두 조건중 하나를 만족할 때까지 k 를 1씩 감소하면서 대입하는 작업 반복(왼..

스택(Stack) 이란?

호출스택 '호출스택'은 메서드의 작업에 필요한 '메모리 공간'을 제공한다. 메서드가 호출되면, 호출 스택에 호출된 메서드를 위한 메모리가 할당되며, 이 메모리는 메서드가 작업을 수행하는 동안 지역변수(매개변수 포함)들과 연산의 중간 결과 등을 저장하는데 사용된다. 그리고 메서드가 작업을 마치면 할당되었던 메모리 공간은 반환되어 비워진다. - 메서드가 호출되면 수행에 필요한 만큼의 메모리를 스택에 할당받는다. - 메서드가 수행을 마치고 나면 사용했던 메모리를 반환하고 스택에서 제거된다. - 호출스택의 제일 위에 있는 메서드가 현재 실행중인 메서드이다. - 아래에 있는 메서드가 바로 위의 메서드를 호출한 메서드이다. main메서드에도 더 이상 수행할 코드가 없으면 종료되어, 호출스택은 완전히 비워지게 되고 ..

단순 선택정렬(Selection Sort) 란?

1. 주어진 배열 중에 최솟값을 찾는다. 2. 그 값을 맨 앞에 위치한 값과 교체한다. 3. 맨 처음 위치를 뺀 나머지 리스트를 같은 방법으로 교체한다. 4. 하나의 원소만 남을 때까지 위의 1~3과정을 반복한다. 아직 정렬하지 않은 부분에서 '값이 가장 작은 요소'를 선택하고 아직 정렬하지 않은 부분의 '첫번째 요소'와 교환한다. 1. 아직 정렬하지 않은 부분에서 가장 작은 키의 값인 arr[min]을 선택한다. 2. arr[min]과 아직 정렬하지 않은 부분의 첫 번째 요소를 교환한다. package Mission4; import java.util.Arrays; import java.util.Scanner; /** * 1. 주어진 배열 중에 최솟값을 찾는다. * 2. 그 값을 맨 앞에 위치한 값과 교..

자바 5일차 과제 Employee 상속

package Mission2; //직원 class Employee { String name; //이름 int age; //나이 String address; //주소 String department; //부서 int salary; //월급 Employee() { //기본 생성자 } //이름, 나이, 주소, 부서를 지정하는 생성자 정의 Employee(String name, int age, String address, String department) { this.name = name; this.age = age; this.address = address; this.department = department; } //인자는 없고 자신의 필드 이름, 나이, 주소, 부서를 출력 public void print..