국비교육

    [Java] day17. API -Date / Calendar

    이번엔 날짜를 나타내는 API 메소드들을 배웠다. 가장 처음 배웠던 java.util.Date 말고 어떤 방법들이 있을까. 우선 Date에 대해 자세히 알아보자. Date 시스템으로부터 현재 날짜, 시간 정보를 가져와서 다룰 수 있게 만들어진 클래스 생성자 2개만 사용하고 나머지는 모두 deprecated 되었다. Date ( ) ; Date ( long ) ; 이렇게 두 개만 살아 남아있다. 첫번째로 기본 생성자로 인스턴스를 생성해보자. 시스템(내 운영체제)으로부터 현재 날짜, 시간 정보를 가져와 기본 값으로 사용한다. Date today = new Date (); java.util.Date = new java.util.Date();//이렇게 작성하는 것이 좋다 Date는 java.sql.Date와 j..

    [Java] day8. 배열

    배열 ( Array ) 같은 자료형의 변수들을 하나의 묶음으로 다루는 것 배열은 저장된 값 마다 인덱스 번호가 부여됨. (0부터 시작) 배열은 heap 영영에 new 연산자를 이용하여 할당한다. 배열의 사용 이유 만약 배열을 사용하지 않는다면 변수를 여러 개 사용해야한다. 연속된 메모리 공간으로 관리할 수 없다. (모든 변수의 이름을 사용자가 관리해야 한다.) 반복문을 이용한 연속 처리가 불가능하다. 배열 선언 - 선언은 stack에 배열의 주소를 보관할 수 있는 공간을 만드는 것이다. 자료형[] 배열명; 자료형 배열명[]; 선언한 래퍼런스 변수에 배열을 할당하여 대입할 수 있다. new 연산자는 heap영역에 공간을 할당하고 발생한 주소값을 반환하는 연산자이다. 발생한 주소를 래퍼런스 변수 (참조형변수..

    [Java] day7. 반복문의 제어 / break문 continue문

    break문 반복문 내에서 사용한다. 해당 반복문을 빠져 나올때 사용하며, 반복문의 조건문 판단 결과와 상관없이 반복문을 빠져나간다. 일반적으로 if (조건식) { break; } 처럼 사용된다. 단, switch문은 반복문이 아니지만 예외적으로 사용된다. 예제 ) break문을 이용한 무한루프를 활용한 1~100까지의 합계 구하기 public void testSimpleBreakStatement() { int sum = 1; int i = 1; while(true) { sum+= i; /* 반복문 조건과 별개로 반복문을 빠져나오기 위한 조건을 다시 작성 */ if(i == 100) { break; } i++; } System.out.println("1부터 100까지의 합은 : " + sum + "입니다..

    [Java] day7. 반복문 while문

    [while문 표현식] 초기식; while(조건식) { 조건식을 만족하는 경우 수행할 구문 (반복할 구문); 증감식; } 예제 )입력한 문자열의 인덱스를 이용하여 문자 하나씩 출력해보기 public void testWhilExample() { Scanner sc = new Scanner(System.in); System.out.print("문자열을 입력하세요 : "); String str = sc.nextLine(); System.out.println("=========== for문 ============"); for (int i = 0; i < str.length(); i++ ) { char ch = str.charAt(i); System.out.println(i + " : " +ch); } Syste..

    [Java] day7. 반복문 for문

    드디어 반복문에 들어갔다. 걱정이 이만저만 ~ 이제 조금이나마 예습했던 부분도 다 끝나버렸다... 6일 컷 수업은 어렵지 않았는데, 막상 과제 뚜껑을 열고보니 너무 어려웠다. 익숙해질때까지 여러 문제를 풀어야겠다.... 기본문제는 풀었는데 조건이 너무 겹치면서, 이걸 손코딩 알고리즘으로도 규칙성을 어떻게 구해야하는지 막혔고 그 부분도 좀더 공부해서 방법을 이해하고 난 뒤 블로그에 정리해야할 것 같다. [for문 표현식] for(초기식; 조건식; 증감식;) { 조건을 만족하는 경우 수행할 구문(반복할 구문); public void testForExample() { //10명의 학생 이름을 입력 받아 이름을 출력해보자. Scanner sc = new Scanner(System.in); /* 이렇게 한명한명 ..

    Java 문제풀이2-1 . if문 (과목별 합격 / 불합격 사유 출력하기)

    문제 /* 국어, 영어, 수학 점수를 입력받아 * 평균 점수가 60점 이상이면서 각 과목이 40점 이상인 조건이 만족하면 "합격입니다!" 를 출력하세요, * 단, 합격이 아닌 경우 불합격 사유가 무엇인지를 모두 출력해주어야 합니다. * 평균점수 미달인 경우 "평균점수 미달로 불합격입니다." 라고 출력하고, * 과목당 과락 점수가 있는 경우 "xx 과목의 점수 미달로 불합격 입니다." 출력하세요 * * -- 입력 예시 -- * 국어 점수를 입력하세요 : 60 * 영어 점수를 입력하세요 : 30 * 수학 점수를 입력하세요 : 20 * * -- 출력 예시 -- * 평균 점수 미달로 불합격입니다. * 영어 점수 미달로 불합격입니다. * 수학 점수 미달로 불합격입니다. * */ 처음 작성한 코드) Scanner ..

    [Java]  day6. if문/ if-else문/ if-else-if문/ switch 조건문

    [Java] day6. if문/ if-else문/ if-else-if문/ switch 조건문

    [if문 표현식] if (조건식) { 조건식이 true일 때 실행할 명령문; } => 조건을 만족하는 경우에만 추가적인 명령을 실행시키고자 할 때 주로 사용한다. /*정수 한 개를 입력받아 그 수가 짝수이면 "입력하신 숫자는 짝수입니다."라고 출력하고, * 짝수가 아니면 출력하지 않는 구문을 작성해보자.*/ Scanner sc = new Scanner(System.in); System.out.print("숫자 한 개를 입력하세요: "); int num = sc.nextInt(); /*짝수인지 물어보는 조건을 기술함 * 어떤 수를 2로 나누었을때 나머지가 0이면 짝수이다. 즉 2의 배수이다.*/ if(num%2 == 0) { /*조건식 부분에 작성한 내용이 true일 때는 해당내용을 실행하고 * false..

    [Java] day6. Scanner()

    Scanner Class 사용자로부터 입력되는 정수, 실수, 문자열을 처리하는 클래스 import 작성 java.util.Scanner; Scanner 작성 - 키보드 입력 값 받기 다음 줄에 입력을 대기시키지 않기 위해 println이 아닌 print 사용 /* Scanner 객체 생성 */ Scanner sc = new Scanner(System.in); 정수 : sc.nextInt() 실수 : sc.nextFloat() 또는 sc.nextDouble() 문자열 : sc.next() (공백문자 미포함) 또는 sc.nextLine() (공백문자 포함) 스캐너 주의사항 스캐너의 next 메소드들은 입력한 내용을 버퍼로부터 토큰단위로 분리해서 읽어온다. 그래서 크게 두가지 사항을 주의해야 한다. next(..

    Java 문제풀이1-2 / Method 호출

    Method 호출 방식 클래스명 새로운이름 = new 클래스명() ; 새로운이름. 메소드() ; 문제 메소드 호출 확인용 메소드 호출 함수를 호출하여 1~10까지의 합을 리턴 받아 출력 10, 20 두 개의 정수를 매개변수로 하여 큰 값 출력하는 메소드 호출 10, 20 두 개의 정수를 매개변수로 하여 두 수를 더하는 메소드 호출 후 리턴값 출력 10, 5 두 개의 정수를 매개변수로 하여 두 수의 차를 구하는 메소드 호출 후 리턴값 출력 조건 클래스는 mian메소드가 포함된 Appplication / 메소드가 있는 Calculator 로 두 개 생성한 뒤, 모든 메소드는 main 함수에서 호출하여 출력시킨다. class Application ) Calculator app1 = new Calculator ..