JAVA通讯录 求一个JAVA编写的通讯录,基本的就可以。

JAVA通讯录 求一个JAVA编写的通讯录,基本的就可以。,第1张

具体方法如下:

1、定义封装一条记录的实体类

2、根据实际系统容量,定义一个数组

3、完成系统中显示全部记录的逻辑

4、完成系统中添加一条记录的逻辑

5、完成系统中删除一条记录的逻辑

6、完成系统中修改一条记录的逻辑

7、全部代码:

import java.util.Scanner

class Contact {

String cellPhone

String name

}

public class Main {

private static void menu () {

System.out.println("************** 菜单 ******"

+ "************")

System.out.println(" 1.显示全部通讯录")

System.out.println(" 2.增加一条记录")

System.out.println(" 3.删除一条记录")

System.out.println(" 4.修改一条记录")

System.out.println(" 0.退出")

}

public static void main(String[] args) {

Scanner scn = new Scanner(System.in)

Contact[] contacts = new Contact[200]

int size = 0

String cmd = ""

do {

menu()

System.out.print("请输入你得选择:(0-4)")

cmd = scn.nextLine()

if (cmd.equals("1")) {

if (size == 0)

System.out.println("系统当前无记录!")

else

for (int i = 0i <sizei++) {

System.out.println(contacts[i].name + ":"

+ contacts[i].cellPhone)

}

} else if (cmd.equals("2")) {

System.out.print("请输入手机号:")

String cellphone = scn.nextLine()

System.out.print("请输入姓名:")

String name = scn.nextLine()

Contact contact = new Contact()

contact.cellPhone = cellphone

contact.name = name

if (size <contacts.length) {

contacts[size++] = contact

System.out.println("添加成功!")

} else {

System.out.println("你最多只能添加" +

contacts.length + "条记录")

}

} else if (cmd.equals("3")) {

System.out.print("请输入要删除的手机号:")

String cellphone = scn.nextLine()

int index = -1

for (int i = 0i <size &&i <contacts.length

i++) {

if (contacts[i].cellPhone.equals(cellphone)) {

index = i

break

}

}

if (index == -1) {

System.out.println("该记录不存在!")

} else {

for (int i = indexi <sizei++) {

contacts[index] = contacts[index + 1]

}

contacts[size - 1] = null

size--

System.out.println("删除成功!")

}

} else if (cmd.equals("4")) {

System.out.print("请输入要修改的手机号:")

String cellphone = scn.nextLine()

int index = -1

for (int i = 0i <size &&i <contacts.length

i++) {

if (contacts[i].cellPhone.equals(cellphone)) {

index = i

break

}

}

if (index == -1) {

System.out.println("该记录不存在!")

} else {

System.out.print("请输入姓名:")

String name = scn.nextLine()

contacts[index].name = name

}

}

} while (!cmd.equals("0"))

System.out.println("退出成功!")

scn.close()

System.exit(0)

}

}

附件:源程序清单 import java.awt.*import java.awt.event.*class Info { public static String name,address,mail,telephoneInfo(){} } public class addressBook extends Frame implements ActionListener { private MenuItem noteAdd=new MenuItem("Add")private MenuItem noteDel=new MenuItem("Del")private MenuItem noteEdit=new MenuItem("Modify")private MenuItem noteExit=new MenuItem("Exit")private List noteList=new List()private String[][] message=new String [1000][4]public Info notes=new Info() public addressBook(){ super("通讯录 向阳")Menu note=new Menu("Edit")note.add(noteAdd)note.add(noteDel)note.add(noteEdit)note.addSeparator()note.add(noteExit) MenuBar bar=new MenuBar()bar.add(note)setMenuBar(bar)add(noteList) noteAdd.addActionListener(this)noteDel.addActionListener(this)noteEdit.addActionListener(this)noteExit.addActionListener(this)noteList.addActionListener(this)addWindowListener(new WindowCloser())setSize(300,400)show()} public void actionPerformed(ActionEvent e){ if(e.getSource()==noteAdd){ notes.mail=nullnotes.name=nullnotes.address=nullnotes.telephone=nullint index=noteList.getItemCount()EditDialog dlg=new EditDialog(this,"添加通讯录")if(dlg.isOk){ message[index][0]=dlg.textName.getText()message[index][1]=dlg.textAddress.getText()message[index][2]=dlg.textEmail.getText()message[index][3]=dlg.textTelephone.getText()if (message[index][0]!=null){ String s="姓名:"+message[index][0]+";\t地址"+message[index][1]+";\tE-mail"+message[index][2]+";\t电话"+message[index][3]noteList.add(s) } } dlg.dispose()}else if(e.getSource()==noteDel){ ConfirmDialog dlg=new ConfirmDialog(this,"确认删除","确定要删除这一条吗?")if (dlg.close){ noteList.remove(noteList.getSelectedIndex())} dlg.dispose()}else if(e.getSource()==noteEdit||e.getSource()==noteList){ int i=noteList.getSelectedIndex()if(i!=-1){ notes.name=message[i][0]notes.address=message[i][1]notes.mail=message[i][2]notes.telephone=message[i][3]EditDialog dlg=new EditDialog(this,"修改通讯录")if(dlg.isOk){ message[i][0]=dlg.textName.getText()message[i][1]=dlg.textAddress.getText()message[i][2]=dlg.textEmail.getText()message[i][3]=dlg.textTelephone.getText() String s="姓名:"+message[i][0]+";\t地址"+message[i][1]+";\tE-mail"+message[i][2]+";\t电话"+message[i][3]noteList.replaceItem(s,i)} dlg.dispose()} }else if(e.getSource()==noteExit){ System.exit(0)} } private class WindowCloser extends WindowAdapter{ public void WindowClosing(WindowEvent we){ System.exit(0)} } public static void main(String[]args){ addressBook a=new addressBook()} } class EditDialog extends Dialog implements ActionListener { private Button ok=new Button("确定")private Button cancel=new Button("取消") private Label labelName=new Label("姓名",Label.LEFT)private Label labelAddress=new Label("地址",Label.LEFT)private Label labelEmail=new Label("E-mail",Label.LEFT)private Label labelTelephone=new Label("电话",Label.LEFT) TextField textName=new TextField(30)TextField textAddress=new TextField(30)TextField textEmail=new TextField(30)TextField textTelephone=new TextField(30) public boolean isOk=falseprivate Info notes=new Info()public EditDialog(Frame parent,String title){ super(parent,title,true)Panel pName=new Panel()pName.setLayout(new FlowLayout())pName.add(labelName)pName.add(textName) Panel pAddress=new Panel()pName.setLayout(new FlowLayout())pName.add(labelAddress)pName.add(textAddress) Panel pEmail=new Panel()pName.add(labelEmail)pName.add(textEmail) Panel pTelephone=new Panel()pName.add(labelTelephone)pName.add(textTelephone) Panel pInfo=new Panel()pInfo.setLayout(new GridLayout(4,1))pInfo.add(pName)pInfo.add(pAddress)pInfo.add(pEmail)pInfo.add(pTelephone) Panel pButton=new Panel()pButton.setLayout(new FlowLayout())pButton.add(ok)pButton.add(cancel) setLayout(new BorderLayout())add("Center",pInfo)add("South",pButton) textName.setText(notes.name)textAddress.setText(notes.address)textEmail.setText(notes.mail)textTelephone.setText(notes.telephone) ok.addActionListener(this)cancel.addActionListener(this)addWindowListener(new WindowCloser())setResizable(false)pack()show()} public void actionPerformed(ActionEvent ae) { if(ae.getSource()==ok){ isOk=truethis.hide() } if(ae.getSource()==cancel){ isOk=falsethis.hide()} } private class WindowCloser extends WindowAdapter { public void windowClosing(WindowEvent we) { isOk=falseEditDialog.this.hide()} } } class ConfirmDialog extends Dialog implements ActionListener { private Button okay=new Button("确定")private Button cancel=new Button("取消")private Label label=new Label()public boolean close=false public ConfirmDialog (Frame parent,String title,String question) { super(parent,title,true)label.setText(question)Panel buttons=new Panel()buttons.setLayout(new FlowLayout())buttons.add(okay)buttons.add(cancel)setLayout(new BorderLayout())add("Center",label)add("South",buttons)okay.addActionListener(this)cancel.addActionListener(this)addWindowListener(new WindowCloser())setResizable(false)pack()show()} private class WindowCloser extends WindowAdapter{ public void WindowClosing(WindowEvent we){ ConfirmDialog.this.close=falseConfirmDialog.this.hide()} public void actionPerformed(ActionEvent ae){ close=(ae.getSource()==okay)hide()} }}

这个太简单了,你问的是程序编制要点,那么我就告诉你:

1.分析程序

2.制定计划

3.编写代码

4.测试

关于你说的用java编写个人通讯录管理程序,这个程序代码

这本书有原代码,你自己可以看下


欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/yw/11511772.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存