国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java實現(xiàn)通訊錄

這篇具有很好參考價值的文章主要介紹了Java實現(xiàn)通訊錄。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言:通訊錄非常適合前期需要練習(xí)語法的小伙伴,效果非常好。
水再渾濁,只要長久沉淀,依然會分外清澈。
人再愚鈍,只要足夠努力,一樣能改寫命運。

此通訊錄的功能包括:
1.刪除聯(lián)系人
2.增加聯(lián)系人
3.展示已有聯(lián)系人
4.查找聯(lián)系人
5.排序聯(lián)系人
6.退出通訊錄

public class Main {
    public static IMainList func(){
        AddressList.menu();//打印菜單
        Scanner scanner=new Scanner(System.in);
        System.out.println("請選擇->");
        int k= scanner.nextInt();
        if(k==1){
            return new DeleatePerson();//刪除聯(lián)系人
        }else if(k==2) {
            return new AddPerson();//增加聯(lián)系人
        }else if(k==3){
            return new ShowPerson();//展示聯(lián)系人
        }else if(k==4){
            return new LookupPerson();//查詢聯(lián)系人
        }else if(k==5){
            return new SortPerson();//聯(lián)系人排序
        }
        return null;
    }
    public static void main(String[] args) {
        //AddPerson addPerson=new AddPerson();//創(chuàng)建通信錄
        AddressList addressList=new AddressList();
        while(true) {
            IMainList iMainList = func();//向上轉(zhuǎn)型,執(zhí)行通訊錄的相關(guān)操作
            if(iMainList==null){
                System.out.println("選擇錯誤,退出通訊錄系統(tǒng)!");
                break;
            }
            iMainList.func(addressList);
        }
    }
}

聯(lián)系人包含姓名、電話號、出生年月信息。

public class Person1 implements Comparable<Person1>{
    public String name;
    private String Telephone;//電話號
    private int year;//出生年月
    private  int month;
    private int day;

    public Person1(String name, String telephone, int year, int month, int day) {
        this.name = name;
        Telephone = telephone;
        this.year = year;
        this.month = month;
        this.day = day;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getTelephone() {
        return Telephone;
    }

    public void setTelephone(String telephone) {
        Telephone = telephone;
    }

    public int getYear() {
        return year;
    }

    public void setYear(int year) {
        this.year = year;
    }

    public int getMonth() {
        return month;
    }

    public void setMonth(int month) {
        this.month = month;
    }

    public int getDay() {
        return day;
    }

    public void setDay(int day) {
        this.day = day;
    }

    @Override
    public String toString() {
        return "Person1{" +
                "name='" + name + '\'' +
                ", Telephone='" + Telephone + '\'' +
                ", year=" + year +
                ", month=" + month +
                ", day=" + day +
                '}';
    }

    @Override
    public int compareTo(Person1 o) {
        return this.name.compareTo(o.name);
    }
    
}

IMainList是一個接口主要實現(xiàn)通過向上轉(zhuǎn)型調(diào)用某個功能。

public interface IMainList {
    public abstract void func(AddressList addressList);
}

定義了聯(lián)系人數(shù)組用于存放聯(lián)系人信息,和菜單功能。

public class AddressList {//通訊錄
    Person1[] person=new Person1[100];
    public static int count=0;
    public AddressList() {

    }
    public static void menu(){
        System.out.println("=================");
        System.out.println("1.刪除聯(lián)系人");
        System.out.println("2.增加聯(lián)系人");
        System.out.println("3.展示已有聯(lián)系人");
        System.out.println("4.查找聯(lián)系人");
        System.out.println("5.排序聯(lián)系人");
        System.out.println("6.退出通訊錄");
        System.out.println("=================");
    }
}

AddPerson類實現(xiàn)了IMainList接口,主要重寫方法,增加聯(lián)系人操作。

public class AddPerson implements IMainList {
    @Override
    public void func(AddressList addressList) {
        Scanner scanner =new Scanner(System.in);
        System.out.println("請輸入姓名");
        String name= scanner.nextLine();

        System.out.println("請輸入電話號");
        String Telephone= scanner.nextLine();
        System.out.println("請輸入年份");
        int year= scanner.nextInt();
        System.out.println("請輸入月份");
        int month= scanner.nextInt();
        System.out.println("請輸入日期");
        int day= scanner.nextInt();
        Person1 per=new Person1(name,Telephone,year,month,day);
        addressList.person[addressList.count]=per;
        System.out.println("添加聯(lián)系人成功");
        addressList.count++;
    }
}

刪除聯(lián)系人功能

public class DeleatePerson implements IMainList {


    @Override
    public void func(AddressList addressList) {
            //刪除聯(lián)系人

        Scanner scanner =new Scanner(System.in);
        System.out.println("請輸入要刪除的聯(lián)系人姓名:");
        String n= scanner.nextLine();
        for(int i=0;i<AddressList.count;i++){
            if(n.equals(addressList.person[i].getName())){
                for(int j=i;j<AddressList.count-1;j++){
                    addressList.person[j]=addressList.person[j+1];
                }
                break;
            }
        }
        addressList.person[AddressList.count-1]=null;
        AddressList.count-=1;
        System.out.println("刪除"+n+"聯(lián)系人成功");
    }
}

查找聯(lián)系人功能

public class LookupPerson implements IMainList {
    @Override
    public void func(AddressList addressList) {
        Scanner scanner =new Scanner(System.in);
        System.out.println("請輸入要查找的聯(lián)系人->");
        String n= scanner.nextLine();
        int flag=0;
        for(int i=0;i<=AddressList.count;i++){
            if(n.equals(addressList.person[i].getName())){
                System.out.println("找到了-->"+n+ "  聯(lián)系人");
                flag=1;
                break;
            }

        }
        if(flag==0){
            System.out.println("找不到此聯(lián)系人");
        }
    }
}

顯示已有聯(lián)系人的信息

public class ShowPerson implements IMainList {
    @Override
    public void func(AddressList addressList) {
        for(int i=0;i<addressList.count;i++){
            System.out.println(addressList.person[i].toString());
        }
    }
}

對聯(lián)系人進(jìn)行排序(通過年份排序)

public class SortPerson implements IMainList {
    @Override
    public void func(AddressList addressList) {
        Person1 person1=new Person1("1","222",1,1,1);
       for(int i=0;i<AddressList.count-1;i++){
           for(int j=0;j<AddressList.count-1-i;j++){
               if(addressList.person[j].getYear()>addressList.person[j+1].getYear()){
                   person1=addressList.person[j];
                   addressList.person[j]=addressList.person[j+1];
                   addressList.person[j+1]=person1;

               }
           }
       }
        System.out.println("排序完成!");
    }
}

Java實現(xiàn)通訊錄文章來源地址http://www.zghlxwxcb.cn/news/detail-512751.html

到了這里,關(guān)于Java實現(xiàn)通訊錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 通訊錄實現(xiàn)【C語言】

    通訊錄實現(xiàn)【C語言】

    目錄 前言 一、整體邏輯分析 二、實現(xiàn)步驟 1、創(chuàng)建菜單和多次操作問題 2、創(chuàng)建通訊錄 3、初始化通訊錄 4、添加聯(lián)系人 5、顯示聯(lián)系人 6、刪除指定聯(lián)系人 ?7、查找指定聯(lián)系人 8、修改聯(lián)系人信息 9、排序聯(lián)系人信息 三、全部源碼 我們上期已經(jīng)詳細(xì)的介紹了自定義類型,本

    2024年02月11日
    瀏覽(91)
  • 【C語言】動態(tài)內(nèi)存管理基礎(chǔ)知識——動態(tài)通訊錄,如何實現(xiàn)通訊錄容量的動態(tài)化

    【C語言】動態(tài)內(nèi)存管理基礎(chǔ)知識——動態(tài)通訊錄,如何實現(xiàn)通訊錄容量的動態(tài)化

    動態(tài)內(nèi)存管理的函數(shù)有:malloc,calloc,ralloc,free,本文講解動態(tài)內(nèi)存函數(shù)和使用,如何進(jìn)行動態(tài)內(nèi)存管理,實現(xiàn)通訊錄聯(lián)系人容量的動態(tài)化,對常見動態(tài)內(nèi)存錯誤進(jìn)行總結(jié)。 ???????? ? ? ? ? ? ? ? ? ??? 豬巴戒 :個人主頁? ??????????????? 所屬專欄 :《C語言進(jìn)階》

    2024年02月04日
    瀏覽(44)
  • Android Studio 簡易通訊錄制作 (Java)

    Android Studio 簡易通訊錄制作 (Java)

    通訊錄首頁: ?添加聯(lián)系人頁面: ?修改聯(lián)系人: 刪除聯(lián)系人: ?程序代碼: MainActivity.java MyAdapter.java ?DBHelper.java User.java ?activity_main.xml dialog.xml ?item.xml colors.xml ?詳細(xì)見:https://gitee.com/love1213/Android-Studio-Contacts.git

    2024年02月11日
    瀏覽(26)
  • Java、JSP等通訊錄管理系統(tǒng)

    技術(shù): Java、JSP 等 摘要: 1.1 選題背景 隨著市場經(jīng)濟(jì)的發(fā)展和人們生活水平的提高,隨著科學(xué)技術(shù)的發(fā)展,計算機(jī)領(lǐng)域不斷取得新的研究成果。計算機(jī)在代替和延伸腦力勞動方面發(fā)揮越來越重要的作用,不僅在工業(yè)方面而且在日常生活中也越來越離不開計算機(jī)。人們已經(jīng)不滿

    2024年02月04日
    瀏覽(30)
  • 通訊錄(純C語言實現(xiàn))

    通訊錄(純C語言實現(xiàn))

    相信大家都有過通訊錄,今天我來帶大家實現(xiàn)以下最簡單的通訊錄,通過本篇文章,相信可以讓大家對C語言有進(jìn)一步的認(rèn)識。 話不多說,我們先放函數(shù)的實現(xiàn) ?是不是看到這里會感到很害怕??不用怕,跟著我的思路,你也可以實現(xiàn)它,我?guī)е阋徊揭徊綄崿F(xiàn)每一個功能 ?

    2024年02月16日
    瀏覽(134)
  • 通訊錄的實現(xiàn)(動態(tài)完結(jié)版)

    通訊錄的實現(xiàn)(動態(tài)完結(jié)版)

    ??博客主頁:阿博歷練記 ??文章專欄:c語言(初階與進(jìn)階) ??代碼倉庫:阿博編程日記 ??歡迎關(guān)注:歡迎友友們點贊收藏+關(guān)注哦 上期阿博帶領(lǐng)友友們實現(xiàn)了通訊錄的靜態(tài)版,這種版本有個缺點,它的大小是固定的,只能存放固定大小的一個人的基本信息,今天阿博就帶

    2024年02月02日
    瀏覽(14)
  • 通訊錄的實現(xiàn)(靜態(tài)入手版)

    通訊錄的實現(xiàn)(靜態(tài)入手版)

    ??博客主頁:阿博歷練記 ??文章專欄:c語言(初階與進(jìn)階) ??代碼倉庫:阿博編程日記 ??歡迎關(guān)注:歡迎友友們點贊收藏+關(guān)注哦 在生活中,我們可以通過通訊錄快速實現(xiàn)對一位好友的查找,便捷了我們的日常生活,今天阿博就帶領(lǐng)友友們一起探索通訊錄的實現(xiàn)??????

    2024年02月02日
    瀏覽(33)
  • C語言--通訊錄的實現(xiàn)

    人的信息:姓名+年齡+性別+住址+電話 通訊錄中可以存放100個人的信息 增加聯(lián)系人 刪除指定聯(lián)系人 查找指定聯(lián)系人 修改指定聯(lián)系人 顯示所有聯(lián)系人的信息 test.c----測試通訊錄 contact.c----通訊錄的實現(xiàn) contact.h----函數(shù)的聲明 代碼如下(示例): 代碼如下(示例):

    2024年02月15日
    瀏覽(141)
  • 動態(tài)通訊錄實現(xiàn)(C語言)

    動態(tài)通訊錄實現(xiàn)(C語言)

    目錄 前言: 一:單個節(jié)點的設(shè)計和主邏輯? 結(jié)點設(shè)計 主邏輯 二:接口實現(xiàn) (1)生成一個新的結(jié)點 (2)增加信息 (3)打印信息 (4)查找? (5)刪除信息 (6)修改信息 (7)排序 ?插入排序 快速排序 (8)已有數(shù)據(jù)讀取 (9)更新數(shù)據(jù)錄入 三:全部代碼 contact.h(聲明) contact.c(接口) test.c(主邏輯) 本

    2024年02月05日
    瀏覽(96)
  • 【C語言】實現(xiàn)動態(tài)版通訊錄

    【C語言】實現(xiàn)動態(tài)版通訊錄

    ??內(nèi)容專欄:【C語言】進(jìn)階部分 ??本文概括: 結(jié)合自定義類型、動態(tài)內(nèi)存管理知識,對靜態(tài)版本的通訊錄進(jìn)行優(yōu)化。 ??本文作者:花 碟 ??發(fā)布時間:2023.4.2 ? 目錄 前言: 一、靜態(tài)版本代碼實現(xiàn): 二、動態(tài)通訊錄? 三、代碼整理? 前面我們學(xué)過了結(jié)構(gòu)體、枚舉等自定義

    2024年02月02日
    瀏覽(96)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包