国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 Java Java基礎 Java 實現(xiàn)通訊錄管理系統(tǒng)教程

Java 實現(xiàn)通訊錄管理系統(tǒng)教程

Jul 24, 2020 pm 05:37 PM

Java 實現(xiàn)通訊錄管理系統(tǒng)教程

本文實例為大家分享了java實現(xiàn)通訊錄管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

完成項目的流程:

1.根據(jù)需求,確定大體方向
2.功能模塊分析
3.界面實現(xiàn)
4.功能模塊設計
5.coding
6.代碼測試

下面是源代碼:

import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Scanner;
import java.util.concurrent.SynchronousQueue;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.WindowConstants;
import javax.swing.text.html.HTMLDocument.Iterator;


class Infro{
 public String id;
 public String name;
 public String sex;
 public String address;
 public String e_mail;
 public String phoneNumber;
 static int index = 0;
 static ArrayList<Infro> list = new ArrayList();
 static int len = list.size();
 //構(gòu)造函數(shù)
 public Infro(String id,String name,String sex,String address,String e_mail,String phoneNumber){
 this.id = id;
 this.name = name;
 this.sex = sex;
 this.address = address;
 this.e_mail = e_mail;
 this.phoneNumber = phoneNumber;
 }
 public String toString(){
 return "編號:"+id+" 姓名:"+name+" 性別:"+sex+" 通訊地址:"+address+" 郵箱地址:"+e_mail+" 電話:"+phoneNumber;
 }

 /**
 * 添加功能
 **/
 public static void addFunction(){//添加功能
 Infro infro = new Infro("","","","","","");
 System.out.println("請輸入添加的數(shù)據(jù):");
 Scanner in = new Scanner(System.in);
 System.out.println("輸入編號:");
 infro.id = in.next();
 System.out.println("輸入姓名:");
 infro.name = in.next();
 System.out.println("輸入性別:");
 infro.sex = in.next();
 System.out.println("輸入通訊地址:");
 infro.address = in.next();
 System.
 out.println("輸入郵箱地址:");
 infro.e_mail = in.next();
 System.out.println("輸入電話:");
 infro.phoneNumber = in.next();
 list.add(index,infro);
 index++;
 if(list.isEmpty()){
 System.out.println("數(shù)據(jù)添加失敗啦");
 }else{
 System.out.println("數(shù)據(jù)添加成功啦");
 len++;//list集合長度加一
// System.out.println(list.get(0).toString());
 }

 }
// public static void deleteFunction(){//刪除功能
// System.out.println("輸入要刪除的聯(lián)系人的編號");
// Scanner in_2 = new Scanner(System.in);
// String d1 = in_2.nextLine();
// for(int a= 0; a<len;a++){
// if(d1.equals(list.get(a).id)){
// list.remove(list.get(a));
// len --; 
// }
// }
// }
 /**
 * 刪除功能
 **/
 public static void deleteFunction(){
 System.out.println("輸入要刪除的聯(lián)系人的編號");
 Scanner in_2 = new Scanner(System.in);
 String d1 = in_2.nextLine();
 java.util.Iterator<Infro> it = list.iterator();
 while (it.hasNext()){
 Infro infro = it.next();
 if (infro.id.equals(d1)){
 it.remove();
 --index;//一定要加這個,否則當做了刪除操作再做添加操作的時候會出現(xiàn)異常(類似于指針,棧)
 System.out.println("刪除完畢"+"此時通訊錄記錄條數(shù)為:" + --len);
 }
 }
 }
 /**
 * 修改功能
 **/
 public static void reditFunction(){
 System.out.println("輸入要修改的通訊錄的Id");
 Scanner in_r = new Scanner(System.in);
 String r1 = in_r.nextLine();
 for(int a = 0; a < len;a++){
 if(r1.equals(list.get(a).id)){
 System.out.println("輸入修改后的姓名:");
 String name_1 = in_r.next();
 list.get(a).name = name_1;
 System.out.println("輸入修改后的性別:");
 String sex_1 = in_r.next();
 list.get(a).sex = sex_1;
 System.out.println("輸入修改后的通訊地址:");
 String address_1 = in_r.next();
 list.get(a).address = address_1;
 System.out.println("輸入修改后的郵箱地址:");
 String e_mail_1 = in_r.next();
 list.get(a).e_mail = e_mail_1;
 System.out.println("輸入修改后的電話:");
 String phoneNumber_1 = in_r.next();
 list.get(a).phoneNumber = phoneNumber_1;
 System.out.println("數(shù)據(jù)修改完畢");
 }
 }
 }
 /**
 * 查詢功能
 **/
 public static void searchFunction() throws Exception{//查詢功能
 System.out.println("請輸入要查詢的姓名:");
 Scanner in_1 = new Scanner(System.in);
 String s1=in_1.nextLine();
 for(int a= 0; a<len;a++){//切記,,這里不能用a<=list.seze(),否則會數(shù)組越界異常
 if(s1.equals(list.get(a).name)){
 System.out.println(list.get(a).toString());
 }
 }
 }

 /**
 * 顯示功能
 **/
 public static void showFunction(){
 for(int i = 0 ;i<len;i++){
 System.out.println(list.get(i).toString());
 }
 }
 /**
 * 保存功能
 **/
 public static void writeFunction() throws IOException{
 FileWriter writer = new FileWriter("通訊錄管理.txt");
 for(int i = 0 ;i<len;i++){
 String []strwriter = new String[len];
 strwriter[i]=list.get(i).toString();
 writer.write(strwriter[i]);
 writer.write("\r\n");
 System.out.println("成功寫入一行數(shù)據(jù)到 通訊錄管理.txt 中");
 }
 writer.close();//關(guān)閉寫入流,釋放資源
 }
 /**
 * 讀取功能
 **/
 public static void readFunction() throws IOException{
 FileReader reader = new FileReader("通訊錄管理.txt");
 BufferedReader br = new BufferedReader(reader);
 String str;
 while((str = br.readLine()) != null){//每次讀取一行文本,判斷是否到達文件尾
 System.out.println(str);
 }
 br.close();
 }
}


public class Demo extends JFrame {

 /**
 * 界面設計
 **/
 public Demo(){
 Container c = getContentPane(); //定義一個頂級容器c
 JPanel jp = new JPanel(); //新建JPanel面板--jp
 JButton button1 = new JButton("新建聯(lián)系人");
 JButton button2 = new JButton("刪除聯(lián)系人");
 JButton button3 = new JButton("編輯聯(lián)系人");
 JButton button4 = new JButton("查找聯(lián)系人");
 JButton button5 = new JButton("顯示所有聯(lián)系人");
 JButton button6 = new JButton("保存聯(lián)系人到本地");
 JButton button7 = new JButton("讀取本地聯(lián)系人");
 jp.setLayout(new GridLayout(2,4,5,5));//新建網(wǎng)格布局管理器(行數(shù),列數(shù),組件間的水平垂直間距)
 jp.add(button1);
 jp.add(button2);
 jp.add(button3);
 jp.add(button4);
 jp.add(button5);
 jp.add(button6);
 jp.add(button7);
 c.add(jp);//將JPanel面板jp添加到頂級容器c中
 setSize(600,500);
 setTitle("*通 訊 錄 管 理 系 統(tǒng)*");
 setVisible(true);
 setResizable(false);//窗體大小由程序員決定,用戶不能自由改變大小
 setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);


 /**
 *按鍵響應
 * 
 **/
 button1.addActionListener(new ActionListener(){//添加功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 Infro.addFunction();
 }
 });
 button2.addActionListener(new ActionListener(){//刪除功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 Infro.deleteFunction();
 }
 });
 button3.addActionListener(new ActionListener(){//修改功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 Infro.reditFunction();
 }
 });
 button4.addActionListener(new ActionListener(){//查詢功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 try {
 Infro.searchFunction();
 } catch (Exception e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }
 }
 });
 button5.addActionListener(new ActionListener(){//顯示功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 Infro.showFunction();
 }
 });
 button6.addActionListener(new ActionListener(){//保存功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 try {
 Infro.writeFunction();
 } catch (IOException e) {
 e.printStackTrace();
 }
 }
 });
 button7.addActionListener(new ActionListener(){//讀取功能實現(xiàn)
 public void actionPerformed(ActionEvent arg0){
 try {
 Infro.readFunction();
 } catch (IOException e) {
 // TODO Auto-generated catch block
 e.printStackTrace();
 }
 }
 });
 }

 public static void main(String[] args) {
 // TODO Auto-generated method stub
 new Demo();
 Infro a = new Infro("", "", "", "", "", "");
 }

}

推薦教程:《Java教程

以上是Java 實現(xiàn)通訊錄管理系統(tǒng)教程的詳細內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻,版權(quán)歸原作者所有,本站不承擔相應法律責任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

熱門話題

Laravel 教程
1601
29
PHP教程
1502
276