{ // 화살표면 break 안써도 ㄱㅊ // ID, PW 를 입력받아 인스턴스 생성 System.out.print("ID:"); String id = scan.next(); System.out.print("PW:"); String pw = scan.next(); user = new User(id, pw); } case 2 -> { // 비밀번호 변경 로직 작성 scan.nextLine(); System.out.print("기존 비밀번호: "> { // 화살표면 break 안써도 ㄱㅊ // ID, PW 를 입력받아 인스턴스 생성 System.out.print("ID:"); String id = scan.next(); System.out.print("PW:"); String pw = scan.next(); user = new User(id, pw); } case 2 -> { // 비밀번호 변경 로직 작성 scan.nextLine(); System.out.print("기존 비밀번호: "> { // 화살표면 break 안써도 ㄱㅊ // ID, PW 를 입력받아 인스턴스 생성 System.out.print("ID:"); String id = scan.next(); System.out.print("PW:"); String pw = scan.next(); user = new User(id, pw); } case 2 -> { // 비밀번호 변경 로직 작성 scan.nextLine(); System.out.print("기존 비밀번호: ">
package Test;
import java.util.Scanner;
public class Ex02 {
public static void main(String[] args) {
/*
Ex.2 (40점)
[ 비밀번호 변경 프로그램 ]
계정의 비밀번호를 변경하는 프로그램.
새롭게 생성된 계정의 비밀번호와 일치하는 비밀번호를 입력한 경우
비밀번호를 변경할 수 있도록 한다.
* 필수 사항
* User 클래스에 명시적 생성자, toString, getter/setter 생성할 것.
*/
Scanner scan = new Scanner(System.in);
int num = 1;
User user = null;
do {
System.out.println();
System.out.println("""
= = = 메뉴 = = =
1. new계정 생성
2. 비밀번호 변경
3. 계정정보 출력
0. 프로그램 종료
= = = = = = = =
""");
System.out.print("* 번호를 입력하세요: ");
num = scan.nextInt();
switch (num) {
case 1 -> { // 화살표면 break 안써도 ㄱㅊ
// ID, PW 를 입력받아 인스턴스 생성
System.out.print("ID:");
String id = scan.next();
System.out.print("PW:");
String pw = scan.next();
user = new User(id, pw);
}
case 2 -> {
// 비밀번호 변경 로직 작성
scan.nextLine();
System.out.print("기존 비밀번호: ");
String pw1 = scan.nextLine();
if(user == null||!pw1.equals(user.getuserPw())) {
System.out.println("* 계정이 없거나 변경되지 않았습니다.");
} else if(pw1.equals(user.getuserPw())) {
System.out.print("변경하려는 비밀번호: ");
String pw2 = scan.nextLine();
user.setuserPw(pw2);
System.out.println("* 변경되었습니다.");
}
}
case 3 -> {
// 계정 정보 출력
String Id = user.getuserId();
String Pw = user.getuserPw();
System.out.println(user);
}
case 0 -> {
// 프로그램 종료(반복문 종료)
System.out.println("프로그램을 종료합니다.");
System.exit(0);
}
default -> System.out.println("잘못 입력했습니다.");
}
} while(true);
}
}
// User 클래스
class User {
private String userId;
private String userPw;
Scanner scan = new Scanner(System.in);
// 명시적 생성자 생성
public User(String userId,String userPw) {
this.userId = userId;
this.userPw = userPw;
}
// toString 생성
public String toString() {
return "[ID: " + userId +"," + " Pw: " + userPw + "]";
}
// Getter & Setter 생성
public void setuserPw(String userPw) {
this.userPw = userPw;
}
public String getuserId() {
return this.userId;
}
public String getuserPw() {
return this.userPw;
}
}
비교해보기
package Test_my;
//Test ex02 비교
import java.util.Scanner;
public class MY_Test {
public static void main(String[] args) {
/*
Ex.2 (40점)
[ 비밀번호 변경 프로그램 ]
계정의 비밀번호를 변경하는 프로그램.
새롭게 생성된 계정의 비밀번호와 일치하는 비밀번호를 입력한 경우
비밀번호를 변경할 수 있도록 한다.
* 필수 사항
* User 클래스에 명시적 생성자, toString, getter/setter 생성할 것.
*/
Scanner scan = new Scanner(System.in);
User u = new User();
int num = 1;
User user = null;
do {
System.out.println();
System.out.println("""
= = = 메뉴 = = =
1. new계정 생성
2. 비밀번호 변경
3. 계정정보 출력
0. 프로그램 종료
= = = = = = = =
""");
System.out.print("* 번호를 입력하세요: ");
num = scan.nextInt();
switch (num) {
case 1 -> {
// ID, PW 를 입력받아 인스턴스 생성
u.CreateUser();
}
case 2 -> { // 화살표면 break 안써도 ㄱㅊ
// 비밀번호 변경 로직 작성
scan.nextLine();
System.out.println("기존 비밀번호: ");
String pw1 = scan.nextLine();
if(pw1.equals(u.getuserPw())) {
System.out.println("변경하려는 비밀번호: ");
String pw2 = scan.nextLine();
u.setuserPw(pw2);
System.out.println("변경되었습니다.");
} else {
System.out.println("계정이 없거나 변경되지 않았습니다.");
}
}
case 3 -> {
// 계정 정보 출력
String Id = u.getuserId();
String Pw = u.getuserPw();
String str = u.toString();
System.out.println(str);
}
case 0 -> {
// 프로그램 종료(반복문 종료)
System.exit(0);
}
default -> System.out.println("잘못 입력했습니다.");
}
} while(true);
}
}
// User 클래스
class User {
private String userId;
private String userPw;
Scanner scan = new Scanner(System.in);
// 명시적 생성자 생성
public User() {
}
// 계정 생성
public void CreateUser() {
System.out.print("ID:");
userId = scan.next();
System.out.print("PW:");
userPw = scan.next();
}
// toString 생성
public String toString() {
return "[ID: " + userId + " Pw: " + userPw + "]";
}
// Getter & Setter 생성
public void setuserPw(String userPw) {
this.userPw = userPw;
}
public String getuserId() {
return this.userId;
}
public String getuserPw() {
return this.userPw;
}
}