JAVA
JAVA_공부_간단한_노트만들기_
gggg21
2024. 11. 3. 16:21
HashMap == 쉽게 말해서 검색어의 카테고리 기능입니다(검색을 뭐라고 하면 되는지 결정하는 것)
Scanner == 개발자가 아닌 사용자가 적을 수 있도록 만들어주는 기능입니다
switch & case & default == 특정 변수의 해당하는 값이 차면 case의 code가 실행되고 case의 값이 없다면 default의 code가 실행된다
JAVA는 논리의 강력한 언어이기에 여러 method가 있어 문장의 길이가 굉장히 길다.
그래서 어려운 경우가 많지만 수학적인 면이 비교적 다른 언어보다는 덜 중요시하니 위안을 삼자
.containKey()은 원래는 key를 확인(boolean)하는 것 if조건에 들어가는 이유
.keyget( key , value ) == key를 value로 반환, 대입하고 저장하겠습니다
.keyset() == 저장된 값들을 불러오겠습니다
참고로
String / int / char / 등의 값들은 속성이란 것으로 변수(저장고)를 만들어 주는데 굉장히 중요한 값으로 이를 알아야지 java를 할 수 있음을 알려드립니다
import java.util.HashMap;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<>(); // HashMap 생성
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("다음 번호를 입력하여 실행해주세요");
System.out.println("[1] 글쓰기");
System.out.println("[2] list");
System.out.println("[3] 글삭제");
System.out.println("[4] 수정");
System.out.println("[5] 종료");
int command = scanner.nextInt(); // 명령어 입력받기
scanner.nextLine(); // 입력 버퍼 비우기
switch (command) {
case 1:
System.out.println("제목을 입력해주세요: ");
String key = scanner.nextLine(); // 제목 입력받기
System.out.println("내용을 입력해주세요: ");
String value = scanner.nextLine(); // 내용 입력받기
map.put(key, value); // HashMap에 추가
System.out.println("게시글이 저장되었습니다.");
break; // switch 블록을 종료
case 2:
System.out.println("저장된 리스트입니다: ");
for (String mapKey : map.keySet()) { // 모든 키를 순회( : )
System.out.println("제목: " + mapKey + ",\n 내용: " + map.get(mapKey));
}
break;
case 3:
System.out.println("글수정할 것을 정해주세요")
for(String mapKey : map.keyset()){
System.out.println("제목" + mapkey + " \n 내용" + map.get(mapkey));
}
System.out.println("삭제할 제목을 입력해주세요: ");
String keyToRemove = scanner.nextLine(); // 삭제할 제목 입력받기
if (map.containsKey(keyToRemove)) {
map.remove(keyToRemove); // 해당 키를 삭제
System.out.println(keyToRemove + "의 게시글이 삭제되었습니다.");
} else {
System.out.println(keyToRemove + "는 저장된 게시글이 없습니다.");
}
break;
case 4:
System.out.println("수정할 제목을 입력해주세요: ");
String keyToEdit = scanner.nextLine(); // 수정할 제목 입력받기
if (map.containsKey(keyToEdit)) {
System.out.println("새 내용을 입력해주세요: ");
String newValue = scanner.nextLine(); // 새 내용 입력받기
map.put(keyToEdit, newValue); // 수정
System.out.println(keyToEdit + "의 게시글이 수정되었습니다.");
} else {
System.out.println(keyToEdit + "는 저장된 게시글이 없습니다.");
}
break;
case 5:
System.out.println("프로그램을 종료합니다.");
scanner.close(); // Scanner 닫기
return; // 프로그램 종료
default:
System.out.println("잘못된 명령어입니다.");
break;
}
}
}
}