[ java ] ArrayList 객체 - 주소록 만들기. > java

본문 바로가기
사이트 내 전체검색

java

[ java ] ArrayList 객체 - 주소록 만들기.

페이지 정보

작성자 웹지기 댓글 0건 조회 6,742회 작성일 20-12-21 13:31

본문

주소록 만들기

조회, 삭제, 검색시 등록된 연락처가 없으면 "등록된 연락처가 없습니다." 출력

추가 선택 이름, 나이, 전화번호 입력

조회 선택 연락처가 존재하면 모든 연락처 출력

삭제 선택 1번부터 원하는 숫자 선택 삭제

검색 선택 이름을 검색해서 해당하는 이름, 나이, 전화번호 출력

종료 "프로그램이 종료되었습니다." 출력

 

화면 -

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 2

===============


등록된 연락처가 없습니다.


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 3

===============


등록된 연락처가 없습니다.


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 4

===============


등록된 연락처가 없습니다.


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 1

이름 : 장승원

나이 : 46

전화번호 : 01011112222


[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 1

이름 : 김은향

나이 : 46

전화번호 : 01022223333


[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 1

이름 : 김똥꾸

나이 : 58

전화번호 : 0101112234


[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 2

===============


1. 장승원 (46세) : 01011112222

2. 김은향 (46세) : 01022223333

3. 김똥꾸 (58세) : 0101112234


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 3

===============


1. 장승원 (46세) : 01011112222

2. 김은향 (46세) : 01022223333

3. 김똥꾸 (58세) : 0101112234

삭제하실 번호를 선택 하세요. 1


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 2

===============


1. 김은향 (46세) : 01022223333

2. 김똥꾸 (58세) : 0101112234


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 4

===============


이름을 입력하세요 김은향

1. 김은향 (46세) : 01022223333


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 2

===============


1. 김은향 (46세) : 01022223333

2. 김똥꾸 (58세) : 0101112234


===============

[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> 5

프로그램 종료

 

----- Address.java -----

public class Address {

    private String name;

    private int age;

    private String phoneNumber;

    public Address(String name, int age, String phoneNumber) {

        super();

        this.name = name;

        this.age = age;

        this.phoneNumber = phoneNumber;

    }

    public String getName() {

        return name;

    }

    public int getAge() {

        return age;

    }

    public String getPhoneNumber() {

        return phoneNumber;

    }

    @Override

    public String toString() {

        return name + " (" + age + "세) : " + phoneNumber;

    }

}

 

----- addressMain.java -----

import java.util.ArrayList;

import java.util.Scanner;


public class addressMain {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        

        ArrayList<Address> address = new ArrayList<Address>();

        

        while(true) {

            System.out.print("[1]추가 [2]전체조회 [3]삭제 [4]검색 [5]종료 >> ");

            int sel = sc.nextInt();

            

            switch(sel) {

                case 1 :

                    System.out.print("이름 : ");

                    String name = sc.next();

                    System.out.print("나이 : ");

                    int age = sc.nextInt();

                    System.out.print("전화번호 : ");

                    String phone = sc.next();

                    address.add(new Address(name, age, phone));

                    System.out.println();

                    break;

                case 2 :

                    System.out.println("===============");

                    System.out.println();

                    if(address.size() <= 0) {

                        System.out.println("등록된 연락처가 없습니다.");

                    }

                    for(int i=0; i<address.size(); i++) {

                        /*

                        String n = address.get(i).getName();

                        int a = address.get(i).getAge();

                        String p = address.get(i).getPhoneNumber();

                        System.out.println((i+1)+". "+n+"("+a+"세)"+" : "+p);

                        */

                        System.out.println((i+1)+". "+address.get(i).toString());

                    }

                    System.out.println();

                    System.out.println("===============");

                    break;

                case 3 :

                    System.out.println("===============");

                    System.out.println();

                    

                    if(address.size() <=0) {

                        System.out.println("등록된 연락처가 없습니다.");

                    } else {

                        for(int i=0; i<address.size(); i++) {

                            System.out.println((i+1)+". "+address.get(i).toString());

                        }

                        

                        System.out.print("삭제하실 번호를 선택 하세요. ");

                        int sel2 = sc.nextInt();

                        if(sel2 > address.size()) {

                            System.out.prinln("잘못된 번호");

                        } else {

                            address.remove(sel2-1);

                        }

                    }

                    System.out.println();

                    System.out.println("===============");

                    break;

                case 4 :

                    System.out.println("===============");

                    System.out.println();

                    if(address.size() <= 0) {

                        System.out.println("등록된 연락처가 없습니다.");

                    } else {

                        System.out.print("이름을 입력하세요 ");

                        String target = sc.next();

                        int ctn=0;   

                        for(int i=0; i<address.size(); i++) {

                            if(target.equals(address.get(i).getName())) {

                                System.out.println((i+1)+". "+address.get(i).toString());

                                cnt++;

                            }

                        }

                        if(cnt == 0) {

                         System.out.println("검색하신 이름이 없습니다.");

                        }

                    }

                    

                    System.out.println();

                    System.out.println("===============");

                    break;

                case 5 :

                    System.out.println("프로그램 종료");

                    break;

            }

            if(sel == 5) {

                break;

            }

        }

        

    }

}


추천0 비추천0

댓글목록

등록된 댓글이 없습니다.

Total 113건 2 페이지
  • 98 [ java ] JavaFestival10 - Question2 - 문자열을 입력받아 알파벳순서대로 정렬하여…
  • JavaFestival10 - Question2 - 문자열을 입력받아 알파벳순서대로 정렬하여 반환하는 메소드를 구현하시오. 단, 대소문자는 구분한다. import java.util.Arrays; public class Question2 { public static void main(String[] args) { // 문자열을 입력받아 알파벳순서대로 정렬하여 반환하는 메소드를 구현하시오 // 단, 대소문자는 구분한다. ...
  • 웹지기 01-07 3894 0 0 댓글 0
  • 97 [ java ] Eclipse GUI ( Graphic User Interface ) Download 및 I…
  • GUI ( Graphic User Interface ) Download Eclipse IDE - GUI Installation Help &gt; Install New Software &gt; Add &gt; Local : WindowBuilder Archive : http://download.eclipse.org/windowbuilder/WB/integration/4.5/ &gt; Add &gt; Swing Designer check ...
  • 웹지기 01-06 1399 0 0 댓글 0
  • 96 [ java ] GUI Programming 방법
  • Java의 GUI Programming 방법 - AWT( Abstract Windowing Toolkit ) 자바가 처음 나왔을 때 함께 배포된 GUI라이브러리 운영체제에 따라 서로 다른 모양으로 그려짐 - Swing(스윙) AWT기술을 기반으로 작성된 자바라이브러리 운영체제에 관계없이 항상 동일하게 작동하며 동일한 모양으로 그려짐 컨테이너(Container)와 컴포넌트(Component) 컨테이너(Container) - 컴포넌트들의 배치를 관리하는 Layout의 개념 ...
  • 웹지기 01-06 1016 0 0 댓글 0
  • 95 [ java ] DAO , DTO
  • DTO ( Data Transfer Object ) - VO ( Value Object ) - 순수 데이터의 객체 - 속성과 그 속성에 접근하기 위한 getter, setter 메소드만을 가진 클래스 DAO ( Data Access Object ) - DB를 사용해 데이터를 조회하거나 조작하는 기능을 전담하도록 만든 오브젝트 - 등록, 수정, 조회, 삭제 등의 작업을 하는 클래스 - CRUD ( CREATE, READ, UPDATE, DELETE ) 작업
  • 웹지기 12-28 2535 0 0 댓글 0
  • 92 [ java ] eclipse jdbc like 구문 사용하기
  • eclipse jdbc like 구문 사용하기 sql = " SELECT * FROM student WHERE name LIKE ? "; pst = conn.prepareStatement(sql); String names = '%'+name+'%'; pst.setString(1, names); ResultSet rs = pst.excuteQuery();
  • 웹지기 12-24 3425 0 0 댓글 0
  • 91 [ java ] jdbc 연동 - 상태창, 연결확인
  • jdbc 연결 상태 확인창 열기 - data source connections 열기 Window &gt; Show view &gt; other &gt; data로검색(Data Source Explorer) &gt; open (콘솔창에 data source explorer 창이 뜸 - 마우스 우클릭으로 connect // disconnect ) Databae Connections &gt; 마우스우클릭 &gt; New &gt...
  • 웹지기 12-23 5516 0 0 댓글 0
  • 90 [ java ] interface(인터페이스)
  • Interface(인터페이스) 클래스들이 구현해야 하는 공통되는 기능들을 미리지정 작업명세서 or 프로젝트 설계도 기능만 정의함으로써 구현 객체의 같은 동작 보장(구현강제) 1) 인터페이스는 틀을 정해주기 때문에 추상메소드만 존재할 수 있다. 2) 추가로 필드에는 상수를 넣어 줄 수 있다. 즉, 인터페이스에는 추상메서드와 추상 필드만 들어갈 수 있다. 하나의 클래스가 여러개의 인터페이스를 구현 할 수 있다.( implements ) 인터페이스는 인터페이스를 상속받을 수 있다.(...
  • 웹지기 12-23 1326 0 0 댓글 0
  • 89 [ java ] JavaFestival10 - Question1 - 어떤 문장의 각 알파벳을 일정한 거리만큼…
  • Question1 - 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 한다. - A를 3만큼 밀면 D가 되고 z를 1만큼 밀면 a가 됩니다. 공백은 수정하지 않는다. - 보낼 문자열 s와 얼마나 밀지 알려주는 n을 입력받아 암호문을 만드는 ceasar 함수를 완성해 보시오. - "a B z" , 4를 입력 바았다면 "e F d" 를 리턴한다. public class Question1 {...
  • 웹지기 12-22 1660 0 0 댓글 0
  • 86 [ java ] 상속 - 마우스 버튼에 대한 중복 클래스를 상속으로 변경
  • 마우스 버튼에 대한 중복 클래스를 상속으로 변경 Mouse.java 에서 사용하는 클래스를 WheelMouse.java와 ErgonomicsMouse.java 파일도 사용하므로 중복이 발생하는데 이를 상속을 통해서 코드를 생략하고, 편리하게 사용할 수 가 있다. ----- Main.java ----- package 상속_마우스; public class Main { public static void main(String[] args) { ...
  • 웹지기 12-22 1598 0 0 댓글 0
  • 85 [ java ] 상속 , 오버라이딩 , 다형성 , 추상클래스 , 패키지
  • 코드의 생산성을 높이기 위해 반복문, 메소드, 상속등을 사용하여 코드를 간결하게 한다. 1) 상속 (기존 클래스의 변수(데이터)와 메소드(로직, 코드)를 물려받아 새로운 클래스를 구성하는 것) - 프로그램의 생산성을 높이기 위함 - 자식 클래스는 부모클래스에 만들어진 필드와 메소드를 만들지 않고도 만든 것과 같은 효과를 얻는다. - 기존에 사용하던 것에 대한 확장의 개념 - 클래스 사이의 상속이지 객체 사이의 상속이 아님. - 자식 객체는 자식클래스와 부모 클래스에 만들어진 모든 ...
  • 웹지기 12-22 1516 0 0 댓글 0
  • 84 [ java ] MVC 패턴 적용 방식 - 음악재생 플레이어
  • MVC 패턴 적용 방식 - 음악재생 플레이어 M - Model Class V - View Class C - Controller Class 모델은 클래스의 멤버변수, 멤버함수 등 뷰는 클래의 모델에 포함된 데이터를 시각화 콘트롤러는 클래스의 모델과 뷰 모두에 영향을 주며 데이터의 흐름을 제어, 데이터의 갱신등 ----- Music.java ----- public class Music { //Model Class private String mus...
  • 웹지기 12-21 4818 0 0 댓글 2
게시물 검색

회원로그인

접속자집계

오늘
3,997
어제
15,369
최대
33,828
전체
8,340,787

그누보드5
Copyright © funyphp.com. All rights reserved.