반응형
👇 공부한 자료들의 실제 소스파일들을 기록해논 공간입니다 👇
오늘의 이야기
드디어 2차원 배열이 지나갔다 ( 끝났다고 한게 아니고 잠시 지나간 거다)
수업을 같이 듣는 동료들이 너무 힘들어하고(나도 힘듦) 그래서 선생님이 2차원배열은 다음에 또 하는 걸로 하고
다음 이론수업을 진행하였다.
너무 행복햇.... 다....
오늘 공부한 내용을 정리해 본다
자바 용어 정리
변수란?
메모리공간이란?
메서드란?
생성자란?
클래스
정의
접근자 class 클래스명 {
접근자 static 리턴타입 메서드명(매개변수) {
}
}
클래스 안에 메서드가 있다.
public static void main(String [] args)
메인 메서드라고 칭한다. 기능은 프로그램의 시작
package명은 보통 소문자로 지정한다
클래스 이름은 첫 글자를 대문자로 지정한다
쉬어가는 문제
> 과제 1
개발자 정보를 정의하고 호출해 보세요
메서드이름 : writer
> 과제 2
add라는 메서드를 생성한다
숫자 2개를 인수로 입력받아 두 개의 숫자를 더하여 출력하는 메서드를 정의 후 호출하세요
> 과제 3
2번 하고 같다. 하지만 결괏값을 리턴하는 메서드를 만들어보세요
> 샘플 호출은 생성자에서 처리한다
package task;
public class Main {
public static void main(String[] args) {
new Admin();
}
}
package task;
public class Admin {
public Admin(){
writer("휴먼이즈 롸잇나우");
System.out.println("----------------------------------");
add(1000,3);
System.out.println("----------------------------------");
System.out.println("입력된 값의 합산 : " + add1(5,5) + " 입니다");
}
public void writer(String name){
System.out.print("개발자 이름 : " + name);
System.out.println();
System.out.println(name + "의 개발자가 만들었습니다");
}
public void add(int in1, int in2){
System.out.println("입력된 값 1 : " + in1 + "\t입력된 값 2 : " + in2);
System.out.println("입력된 값의 합산 : " + (in1+in2) + " 입니다");
}
public int add1(int in1, int in2){
int result = in1+in2;
System.out.println("입력된 값 1 : " + in1 + "\t입력된 값 2 : " + in2);
return result;
}
}
오늘의 문제
조별 미션
1. 샘플은 그대로 둔 뒤 새로 만든다
2. 각 조에서 주제를 만든다
3. 쉬운 거는 1차원 배열을 사용하는 게 가장 쉽다
4. 해당 주제를 가지고
1. " 1. 입력 | 2. 수정 | 3. 삭제 | 4. 검색 | 5. 전체 보기 | 6. 종료"
기능을 만들어라.
5. 순서는 1/5/6을 만들고 나머지 2/3/4를 구현해 본다
package Project;
public class Main {
public static void main(String[] args) {
new Exe();
}
}
package Project;
import java.util.Scanner;
public class Exe {
Scanner in = new Scanner(System.in);
// 멤버 변수선언
String[][] movieList = new String[10][2];
// 생성자
public Exe() {
boolean flag = true;
while (flag) {
info();
System.out.print("번호를 입력하세요 : ");
int inPutNum = in.nextInt();
in.nextLine();
switch (inPutNum) {
case 1: // 컨텐츠 입력기능
inContent();
break;
case 2: // 컨텐츠 수정 기능
editContent();
break;
case 3: // 컨텐츠 삭제 기능
System.out.println("삭제된 컨텐츠 이름 : [" + deleteContent() + "] 입니다");
System.out.println();
break;
case 4: // 컨텐츠 검색 기능
searchContent();
break;
case 5: // 저장된 전체 컨텐츠 검색
totalContent();
break;
case 6: // 종료기능
flag = false;
System.out.println("프로그램을 종료합니다.");
break;
}
}
}
public void inContent() {
System.out.print("입력할 컨텐츠 이름 : ");
String contentName = in.nextLine();
System.out.print("컨텐츠가 등록된 OTT이름 : ");
String contentOtt = in.nextLine();
for (int i = 0; i < 10; i++) {
if (movieList[i][0] == null) {
movieList[i][0] = contentName;
movieList[i][1] = contentOtt;
break;
}
}
System.out.println();
}
public void editContent() {
String tmpC = "";
String tmpO = "";
boolean flag = true;
boolean subFlag = true;
while (flag) {
System.out.println("1 : 컨텐츠 이름 수정\t2 : 컨텐츠의 OTT 이름 수정");
System.out.print("번호를 입력하세요 >> ");
int searchNum = in.nextInt();
in.nextLine();
System.out.println();
while (subFlag) {
if (searchNum == 1) {
System.out.print("변경 전 컨텐츠 이름 입력 : ");
tmpC = in.nextLine();
System.out.print("변경 후 컨텐츠 이름 입력 : ");
tmpO = in.nextLine();
for (int j = 0; j < 10; j++) {
if (movieList[j][0] != null) {
if (movieList[j][0].equals(tmpC)) {
System.out.println(" >> 변경 전 [" + movieList[j][0] + "]\t 변경 후 [" + tmpO + "] ");
movieList[j][0] = tmpO;
subFlag = false;
break;
}
}
}
} else if (searchNum == 2) {
System.out.print("등록된 OTT를 변경 할 컨텐츠 이름 입력 : ");
tmpC = in.nextLine();
System.out.print("변경 후 OTT 입력 : ");
tmpO = in.nextLine();
for (int j = 0; j < 10; j++) {
if (movieList[j][0] != null) {
if (movieList[j][0].equals(tmpC)) {
System.out.println(" >> 변경 전 [" + movieList[j][1] + "]\t 변경 후 [" + tmpO + "] ");
movieList[j][1] = tmpO;
subFlag = false;
break;
}
}
}
} else break;
}
System.out.println();
if (subFlag == false) {
flag = false;
} else if (subFlag == true) {
System.out.println("입력하신 내용에 오류가 있습니다. \n처음 화면으로 돌아가기 [ 1 ] \t 수정 작업 재 시도 [ 2 ]");
System.out.print("번호를 입력 해 주세요 : ");
searchNum = in.nextInt();
if (searchNum == 1) {
flag = false;
} else {
System.out.println();
tmpC = "";
tmpO = "";
searchNum = 0;
}
}
}
System.out.println();
}
public String deleteContent() {
System.out.print("삭제할 컨텐츠 이름을 입력하세요 : ");
String contentName = in.nextLine();
for (int i = 0; i < 10; i++) {
if (movieList[i][0] != null) {
if (movieList[i][0].equals(contentName)) {
movieList[i][0] = null;
movieList[i][1] = null;
break;
}
}
}
return contentName;
}
public void searchContent() {
System.out.print("검색할 영화 이름 : ");
String searchName = in.nextLine();
System.out.print("\t >> ");
for (int i = 0; i < 10; i++) {
if (movieList[i][0] != null) {
if (movieList[i][0].equals(searchName)) {
System.out.println("검색한 [" + movieList[i][0] + "] 컨텐츠는 [" + movieList[i][1] + "]에서 시청가능합니다.");
break;
}
}
}
System.out.println();
}
public void totalContent() {
System.out.println();
System.out.println("전체 컨텐츠 및 OTT 리스트 보기");
System.out.println();
for (int i = 0; i < 10; i++) {
System.out.println((i + 1) + ". 이름 : " + movieList[i][0] + "\n>> 저장된 OTT 정보 : " + movieList[i][1]);
System.out.println();
}
System.out.println();
}
public void info() {
System.out.println("----------[ 영화 컨텐츠와 영화컨텐츠가 등록된 OTT를 관리하는 프로그램 ]---------- ");
System.out.println("----------[ 1. 입력(10개만 가능) | 2. 수정 | 3. 삭제 | 4. 검색 | 5. 전체보기 | 6. 종료 ]----------");
}
}
반응형
'👩🏻💻 𝐋𝐚𝐧𝐠𝐮𝐚𝐠𝐞 > ⠀⠀⠀⠀ Jᴀᴠᴀ' 카테고리의 다른 글
2023/10/20 ⭐️ 조별미션 - 즐겨봐요 게임의숲 (1) | 2023.10.20 |
---|---|
2023/10/19💌 조별 미션 / 영단어 깨기 (1) | 2023.10.19 |
2023/10/17✅ 2차원배열 문제 (0) | 2023.10.18 |
2023/10/16✏️ 2차원 배열 (1) | 2023.10.18 |
2023/10/13⭐️ 미니프로젝트 완성 (0) | 2023.10.18 |