전체 글 176

+13 메소드 세분화 예제

변수 설정 (은닉화) → private *동전 *음료수 ㅡ 메소드 : 동작, 행위 → 사용 가능 → public *동전 투입시 처리 *잔돈 *시작 ㅡ 생성자 (변수에 대한 초기화) → 필요시에 사용 1. 메소드는 재 사용, 수정 가능, 추가 (유지 보수) 2. 견고한 프로그램 (구조화) → 기능별 분리 3. 반복적 소스 → 제거 가능 ㅡ 웹: 메소드 (7-80% 차지) → 라이브러리 → 라이브러리 변경(오버라이딩) 1. OX 문제 1번째 답 입력(O, X): O . . 10번째 답 입력(O, X): X === 정답 === O O O O X O X O O X O O O O O O O O X X 점수: 70점 // 난수 발생 static char[] munje() { char[] m = new char[10..

수업 2022.05.19

+11 메소드 예제

1. 사용자로부터 아이디를 받아 중복 체크하는 메소드 원형 작성 static boolean idCheck(String id) static boolean idCheck(String id) { boolean bCheck=false; // 중복 안됨 String[] ids = {"hong", "kim", "lee", "shim", "park"}; for(String s:ids) { if(s.equals(id)) { bCheck=true; // 중복 됨 break; } // true 출력 되어서, else 작성 필요 없음 } return bCheck; } static void process() { Scanner sc = new Scanner(System.in); System.out.println("아이디 입력:..

수업 2022.05.17

+11 메소드 제작

1. 사칙 연산 → +, -, *, /, 계산기 조립 첫번째 정수 입력: 5 두번째 정수 입력: 8 연산자 입력(+,-,*,/): * 5*8=40 static int add(int a, int b) { // 사용자 정수 2개 입력 → 더한 값 출력 return a+b; // 더한 값 출력 } static int minus(int a, int b) { return a-b; } static int multiple(int a, int b) { return a*b; } static String div(int a, int b) // 매개변수 → 사용자가 요청한 { // 경우의 수 여러 개 있는 경우 String result = ""; // 지역변수 → div() 안에서만 사용하는 변수 if(b==0) result..

수업 2022.05.17

패스트캠퍼스 자바 알고리즘 문제

1. 나열된 수에서 최소값과 최대값 구하기 배열에 있는 수 중 맨 처음에 있는 값을 max와 min으로 가정하고, 배열의 마지막 숫자까지 비교하면서 더 큰 수나 더 작은 수가 나올 때까지 max와 min의 값으로 바꾸도록 한다. 그 때의 위치를 변수에 저장한다. 가장 큰 값은 101이고, 위치는 5번째입니다. 가장 작은 값은 2이고, 위치는 4번째입니다. public static void main(String[] args) { int[] numbers = {10, 55, 23, 2, 79, 101, 16, 82, 30, 45}; int min = numbers[0]; // 최소값 0번째부터 찾는다 int max = numbers[0]; int minPos = 0; // 순서 int maxPos = 0; ..

+10 메소드

메소드 특정 작업을 수행 하는 명령문의 집합 한가지 기능만 수행 가능하게 한다. 메소드 사용 목적 다른 클래스에서 필요 시에 재사용 가능하게 한다. 중복된 코드 제거 한다. 구조화 된 프로그램 호출 메소드 불러서 사용 int add(int a, int b) { int c = a+b; return c; // 호출한 사람에게 넘겨준다, 메소드 종료 } ** void는 return 생략한다. 메소드 만들기 1. 사용자로부터 단 입력 받아 구구단 출력하기 단 입력: 4 4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 . . 4 * 9 = 36 public class test { // 입력 기능 static int input() { Scanner sc = new Scanner(System.in); Syst..

수업 2022.05.16

+10 변수, 연산자, 제어문, 배열 [복습]

p20 한 개의 영화 정보를 출력하는 변수의 조합 → 문자열, 숫자 구분 필요 String title_kor = ""; // 한글 제목 String title_eng = ""; // 영어 제목 String regdate = ""; // 개봉일 double score = 8,1; // 평점 String genre = ""; // 장르 int showUser = 84178; // 관객 수 → 증가하기 때문에 문자열X String nation = ""; // 국가 int boxoffice = 1; // 박스오피스 int grade = 15; // 등급 int time = 106; // 러닝 타임 식당 정보 변수 String title = ""; // 식당 이름 double score = 4.6; // 평점 S..

수업 2022.05.16

boolean형에 while문

while문은 조건문이 참일 때 실행한다. while문에 boolean형을 쓸 경우, 조건문이 참일 때 계속 동작하므로, break문을 사용해 중지해야 한다. boolean result = true; // 기본 값 while(result) { System.out.println("나는 참이야"); result=false; // 조건 만족 했으니 break; // 중지 } while(result) { System.out.println("출력되지 않을 걸?"); } // 실행 값 나는 참이야 위 예처럼 while문은 조건이 꼭 참일 때만 사용한다. 또한, break문이 없을 시 무한 루프가 걸려 메모리를 잡아먹거나 웹이 터지는 현상이 일어난다.

Java 2022.05.14

toString()과 String.valueOf()

두 메소드 모두 Object의 값을 String으로 변환하지만 변경하고자 하는 Object가 null인 경우, String.valueOf() → 문자열 "null" 값 반환한다. toString() → NPE를 발생시키고, Object에 담긴 값이 String이 아니어도 출력한다. null로 인해 발생된 에러는 시간이 지나고, 타인의 소스인 경우 디버깅 하기 어렵고 어떤 의미를 내포하고 있는지 판단하기 어렵다. 때문에, NPE를 방지하기 위해서는 toString보다는 valueOf를 사용하는 것을 추천한다.

Java 2022.05.13