'내 첫사랑! 컴퓨터 프로그래밍' 카테고리의 다른 글
코딩/프로그래밍 처음 하는 사람이 배우기 제일 좋은 언어는? - C언어, 자바, 파이썬, 자바스크립트, 루비 비교 (0) | 2020.05.13 |
---|---|
변수란? (4) | 2019.12.10 |
개발자의 조건?! (0) | 2017.01.04 |
접근제한자란 (0) | 2017.01.02 |
증감연산자 i++와 ++i의 차이 (0) | 2016.12.12 |
코딩/프로그래밍 처음 하는 사람이 배우기 제일 좋은 언어는? - C언어, 자바, 파이썬, 자바스크립트, 루비 비교 (0) | 2020.05.13 |
---|---|
변수란? (4) | 2019.12.10 |
개발자의 조건?! (0) | 2017.01.04 |
접근제한자란 (0) | 2017.01.02 |
증감연산자 i++와 ++i의 차이 (0) | 2016.12.12 |
· 접근제한자
- 클래스 내의 메멉에 접근을 제한하기 위한 예약어
· 접근 제한자의 종류
- private : 하나의 클래스 내에서만 사용 가능한 멤버를 지정할 때 사용하는 제한자
- package : 동일 파일 + 동일 폴더
- protected : 동일 파일 + 동일 폴더 + 상속
- public : 객체를 가진 모든 영역
소프트웨어 개발자 제임스 고슬링(James Arthur Gosling) (0) | 2017.03.28 |
---|---|
개발자의 조건?! (0) | 2017.01.04 |
증감연산자 i++와 ++i의 차이 (0) | 2016.12.12 |
static 변수에 대해서 (0) | 2016.12.06 |
if문에서 break 명령 사용의 의미 (0) | 2016.12.03 |
i++는 내부적으로 다음과 같이 동작한다.
1. i의 현재 값을 보관한다. (현재 실행되는 명령문에서는 이 보관된 값이 사용되어야 하니까)
2. i의 값을 1 더한다.
3. 보관했던 값을 반환한다.
++i는 내부적으로 다음과 같이 동작한다.
1. i의 값을 1 더한다.
2. i의 값을 반환한다.
개발자의 조건?! (0) | 2017.01.04 |
---|---|
접근제한자란 (0) | 2017.01.02 |
static 변수에 대해서 (0) | 2016.12.06 |
if문에서 break 명령 사용의 의미 (0) | 2016.12.03 |
Error클래스와 Exception클래스 비교 (0) | 2016.03.28 |
import java.io.*; public class Room_mgmt_2 { public static void main(String[] args) throws IOEception { BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); boolean status = true, stat = true; int numoffloor = 0; int menu = 0; int fn = 0; System.out.println("================================"); System.out.println("\thotel management"); System.out.println("================================"); System.out.println("Number of floors = "); numoffloor = Integer.parseInt(in.readLine()); System.out.println(); int[] numofroom = new int[numoffloor]; String[][] roomname = new String[numoffloor][]; String[][] guestname = new String[numoffloor][]; int[][] numofparty = new int[numoffloor][]; int[][] charge = new int[numoffloor][]; int[][] days = new int[numoffloor][]; for(int i=0;i<numoffloor;i++) { System.out.print("Number of rooms of floor " + (i+1) + "="); numofroom[i] = Integer.parseInt(in.readLine()); System.out.println(); roomname[i] = new String[numofroom[i]]; guestname[i] = new String[numofroom[i]]; numofparty[i] = new int[numofroom[i]]; charge[i] = new int[numofroom[i]]; days[i] = new int[numofroom[i]]; System.out.println("Basic Data floor #" + (i+1) + ":"); for(int j=0;j<numofroom[i];j++) { System.out.println(" Basic Data for Room #" + (j+1) + " : "); System.out.println(" Room name = "); roomname[i][j] = in.readLine(); System.out.print(" Charge for 1 day = "); charge[i][j] = Intger.parseint(in.readLine()); } } do { System.out.println(" 1 : Check in / 2 : Check out / 3 : Room Information / 0 : Exit"); System.out.print("Type Menu (0~3) = "); menu = Integer.parseInt(in.readLine()); System.out.println(); stat = true; switch (menu) { case 0: status = false; break; case 1: do { stat = false; System.out.print(" Check in Floor = "); fn = Integer.parseInt(in.readLine()); if(fn <= 0 || numofloor < fn) stat=true; } while (stat); fn--; stat=true; System.out.println(); System.out.println("\tFloor = " + (fn + 1)); System.out.println("\t==========\t ==========\t ==========\t =========="); System.out.println("\tRoom #\t Room Name\t Charge/day\t Guest\t Num of party"); System.out.println("\t==========\t ==========\t ==========\t =========="); for(int i=0;i<numofroom[fn];i++) System.out.println("\t" + (i+1) + "\t " + roomname[fn][i] + "\t " + charge[fn][i] + "/day\t " + guestname[fn][i] + "\t " + numofparty[fn][i]); System.out.println("\t==========\t ==========\t ==========\t =========="); do { System.out.print(" Check in Room Number ( 0 = cancel ) = "); int rn = Integer.parseInt(in.readLine()); if(rn == ) break; --rn; if(0<=rn && rn < numofroom[fn] && guestname[fn][fn] == null) { stat = false; System.out.print(" Guest name = "); guestname[fn][fn] = in.readLine(); System.out.print(" Number of party = "); numofparty[fn][fn] = Integer.parseInt(in.readLine()); System.out.print(" Number of day = "); days[fn][rn] = Integer.parseInt(in.readLine()); } } while (stat); break; case 2: do { stat = false; System.out.print(" Check out Floor = "); fn = Integer.parseInt(in.readLine()); if(fn <= 0 || numofloor < fn) stat=true; } while(stat); fn--; stat = true; System.out.println(); System.out.println("\tFloor = " + (fn + 1)); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); System.out.println("\tRoom #\t Room Name\t Charge/day\t Guest\t Num of party"); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); for(int i=0; i<numofroom[fn]; i++) System.out.println("\t" + (i+1) + "\t " + roomname[fn][i] + "\t " + charge[fn][i] + "/day\t " + guestname[fn][i] + "\t " + numofparty[fn][i]); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); do { System.out.print(" Check out Room Number ( 0 = cancel ) = "); int rn = Integer.parseInt(in.readLine()); if(rn == ) break; --rn; if( 0 <= rn && rn < numofroom[fn] && guestname[fn][fn] != null) { stat = false; System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); System.out.println("\t" + (rn+1) + "\t " + roomname[fn][fn] + "\t " + charge[fn][rn] + "/day"); System.out.println("\t\t " + guestname[fn][rn] + " (" + numofparty[fn][rn] + ")\t \" + days[fn][rn] * charge[fn][rn] + "/" + days[fn][rn] + " days"); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); guestname[fn][rn] = null; numofparty[fn[prn] = 0; days[fn][rn] = 0; } } while (stat); break; case 3: for (fn = 0; fn < numoffloor; fn++) { // System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); System.out.println(); System.out.println("\tFloor = " + (fn + 1)); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); System.out.println("\tRoom #\t Room Name\t Charge/day\t Guest\t Num of party"); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); for (int i = 0; i < numofroom[fn]; i++) System.out.println("\t" + (i+1) + "\t "+ roomname[fn][i] + "\t " + charge[fn][i] + "/day\t " + guestname[fn][i] + "\t " + numofparty[fn][i]); System.out.println("\t==========\t ==========\t ==========\t =====\t==========\t =====\t ============"); } break; default: System.out.println("illegal menu1"); } } while (status); System.out.println("Good Luck! Bye"); } } |
자바 개요 (0) | 2020.05.12 |
---|---|
자바,이클립스 설치 및 설정 (0) | 2019.12.13 |
[Java] 반, 전교 성적처리 예제 소스 (0) | 2016.12.08 |
자바에서 while(true) (0) | 2016.12.07 |
System.in.read() 함수, System.in.readLine() 함수 [출처] System.in.read() 함수, System.in.readLine() 함수 (0) | 2016.12.05 |
# While 문은 미리 반복 횟수를 알 수 없고 조건에 따라 반복하는 경우에 사용한다.
조건이 만족되면 반복을 계속하는 구조!
# 무한 루프는 조건식으로 true를 적으면 된다.
자바,이클립스 설치 및 설정 (0) | 2019.12.13 |
---|---|
[Java] 2차원 투숙객관리 예제 (0) | 2016.12.09 |
[Java] 반, 전교 성적처리 예제 소스 (0) | 2016.12.08 |
System.in.read() 함수, System.in.readLine() 함수 [출처] System.in.read() 함수, System.in.readLine() 함수 (0) | 2016.12.05 |
JVM에서 제공되는 묵시적인 예외처리기의 동작에 관해서.. (1) | 2016.03.22 |
static으로 선언된 변수, 클래스 변수라고 한다.
그 이유인즉, static으로 선언된 변수는
변수가 선언된 클래스의 모든 인스턴스(객체)가 공유할 수 있는 변수이기 때문이다.
의문을 갖다고 생각해보면
우리 네트워크로 연결되어있는 컴퓨터의 폴더를 공유를 하면
다른 사람들도 볼 수 있고, 권한도 부여해주면 다른 사람이 수정도 가능하다.
그럼 어떻게 할까?
마지막에 수정한 파일만이 존재한다.
※ 수정 권한을 주지 않을 때는 final로 선언하면 되겠다.
개발자의 조건?! (0) | 2017.01.04 |
---|---|
접근제한자란 (0) | 2017.01.02 |
증감연산자 i++와 ++i의 차이 (0) | 2016.12.12 |
if문에서 break 명령 사용의 의미 (0) | 2016.12.03 |
Error클래스와 Exception클래스 비교 (0) | 2016.03.28 |
System.in.read()
콘솔 창에서 입력을 받는 함수이다.
콘솔창에 입력 되는 값은 모두 아스키코드 값으로 입력받는다.
예 1) A를 입력 받으면 A의 아스키 코드값인 65가 입력된다.
예 2) 숫자 0을 입력받으면 아스키 코드값인 48이 입력된다.
활용방법
예 1)
char a = (char) System.in.read();
이 함수가 입력되는 것은 0~255까지의 아스키코드 값이므로 char형으로 받고 싶다면 형변환을
하여서 받아야한다.
예 2)
int a = System.in.read() - 48;
숫자를 문자로 인식하기 때문에 해당 숫자의 아스키코드값을 입력받게된다. 따라서 0의 아스키
코드값인 48을 빼주어서 입력받는다.
**예외 처리가 필요한 함수이다.
import java.io.*;
public static void main(String[] arg) throws java.io.IOException{}
System.in.readLine()
read()의 활용함수. 즉 콘솔창에서 라인 전체를 읽어온다. 이 때, 엔터키 또한 라인에 포함되어서 읽어지는 것과 엔터키는 이 함수가 알아서 처리한다는 점을 주의해야한다.
<read.line() 함수 관련 예제>
import java.io.*; public class Exam_08 { public static void main(String[] ar) throws IOException{ BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); int inwon = 0; String[] name = null; int[] age = null; System.out.println("인원 ="); inwon = Integer.parseInt(in.readLine()); name = new String[inwon]; age = new int[inwon]; for(int i=0; i<inwon; ++i){ System.out.println(i+1+"번째 사람의 이름 = "); name[i] = in.readLine(); System.out.println(i+1+"번째 사람의 나이 ="); age[i] = Integer.parseInt(in.readLine()); } System.out.println(); for(int i=0;i<inwon;++i){ System.out.println(i+1+":"+name[i] + ":"+age[i]); } |
자바,이클립스 설치 및 설정 (0) | 2019.12.13 |
---|---|
[Java] 2차원 투숙객관리 예제 (0) | 2016.12.09 |
[Java] 반, 전교 성적처리 예제 소스 (0) | 2016.12.08 |
자바에서 while(true) (0) | 2016.12.07 |
JVM에서 제공되는 묵시적인 예외처리기의 동작에 관해서.. (1) | 2016.03.22 |
if문에서 break명령의 사용의미는 "if문에 있는 블록을 제외하고 가장 가까이 있는 블록"을 의미합니다.
예를들어 아래와 같은 코드가 있다면,
public class Exam_11 { public static void main(String[] arg) {for(int i = 0; i < 5; ++i) { if(i == 2) { break; } System.out.println("*"); } } } |
위 코드에서 break문의 의미는 if문이 있는 블록을 제외한 가장 가까운 블록이
System.out.println("*"); 아래 있는 }(괄호)로 이동되어 프로그래밍 코드가 수행이 되게 된다.
개발자의 조건?! (0) | 2017.01.04 |
---|---|
접근제한자란 (0) | 2017.01.02 |
증감연산자 i++와 ++i의 차이 (0) | 2016.12.12 |
static 변수에 대해서 (0) | 2016.12.06 |
Error클래스와 Exception클래스 비교 (0) | 2016.03.28 |