如何用java制作预约记录?
好的,所以基本上我要做一个医生和病人的预约记录。我已经做了医生和病人的记录,但现在我必须做一个预约记录,根据病人的病情和医生的专业,我必须将一名病人分配给一名医生。我是java新手,所以我不太擅长java,如果你能帮我,我将非常感谢:-)我将向你展示我迄今为止所做的编码。它也包含了一些额外的东西,但我必须把它添加到我的作业中。是的,我给一些变量和对象起的名字有点奇怪,但那是因为java不允许我给它们起一个合适的名字。。无论如何,这是我的代码:-
package samplee.java;
import java.util.*;
import java.util.ArrayList;
import java.util.Scanner;
public class patient$ {
public static void main(String[] args) {
ArrayList<patientss> patient1= new ArrayList<patientss>();
ArrayList<doctorss> doctor1= new ArrayList<doctorss>();
Scanner src= new Scanner(System.in);
Scanner sc= new Scanner(System.in);
Scanner stc= new Scanner(System.in);
Scanner sdc= new Scanner(System.in);
Scanner update= new Scanner(System.in);
Scanner ill=new Scanner(System.in);
int id,it,num,i,docid,docit,docnum,docid1;
String name,docname,docspecial,illness;
int ages,docage;
int id1;
Boolean leave = false;
while(!leave){
patientss xx= new patientss();
System.out.println("Enter the patient's ID ");
System.out.println("-1 to finish entering");
id=src.nextInt();
if(id != -1){
xx.setId(id);
}
System.out.println("Enter the patient's name ");
System.out.println("-1 to finish entering");
name=stc.next();
if(id != -1){
xx.setName(name);
patient1.add(xx);
}
System.out.println("Enter the patient's phone number");
System.out.println("-1 to finish entering");
num=sdc.nextInt();
if(id != -1){
xx.setNum(num);
patient1.add(xx);
}
System.out.println("Enter the type of illness the patient has");
System.out.println("-1 to finish entering");
illness=ill.next();
if(id!= -1){
xx.setIllness(illness);
patient1.add(xx);
}
else { leave = true; }//Escape the while loop.
}
System.out.println("Enter the id of a patient");
it=sc.nextInt();
patientss tt= new patientss();
for(i=0;i<patient1.size();i++)
{
tt=patient1.get(i);
if(it==tt.getId())
System.out.println(tt.toString());
break;
}
System.out.println("Enter the id of the patient you want to update");
Scanner id11= new Scanner(System.in);
id1=id11.nextInt();
int up,id2;
String namess;
int phones;
patientss dd= new patientss();
for(i=0;i<patient1.size();i++){
dd=patient1.get(i);
if(id1==dd.getId()){
System.out.println("If you want to change the name, type 2");
System.out.println("If you want to change the number, type 3");
System.out.println("If you want to change the id, type 1");
up=update.nextInt();
if(up==1){
System.out.println("Enter a new ID ");
Scanner idd= new Scanner(System.in);
id2=idd.nextInt();
dd.setId(id2);
patient1.add(dd);
}
else if(up==2){
System.out.println("Enter a new name");
Scanner namme=new Scanner(System.in);
namess=namme.next();
dd.setName(namess);
patient1.add(dd);
}
else if(up==3){
System.out.println("Enter a new phone");
Scanner newphone= new Scanner(System.in);
phones=newphone.nextInt();
dd.setNum(phones);
patient1.add(dd);
}
}
System.out.println(dd);
break;
}
boolean over = false;
while(!over){
doctorss xt= new doctorss();
System.out.println("Enter the doctor's ID ");
System.out.println("-1 to finish entering");
docid=src.nextInt();
if(docid != -1){
xt.setDocid(docid);
}
System.out.println("Enter the doctor's name ");
System.out.println("-1 to finish entering");
docname=stc.next();
if(docid != -1){
xt.setDocname(docname);
doctor1.add(xt);
}
System.out.println("Enter the doctor's phone number");
System.out.println("-1 to finish entering");
docnum=sdc.nextInt();
if(docid != -1){
xt.setDocnum(docnum);
doctor1.add(xt);
}
System.out.println("What does the doctor specialize in?");
String specialize;
Scanner special= new Scanner(System.in);
specialize=special.next();
if(docid != -1){
xt.setSpecialize(specialize);
doctor1.add(xt);
}
else { over = true; }//Escape the while loop.
}
System.out.println("Enter the id of a doctor");
docit=sc.nextInt();
doctorss tti= new doctorss();
for(i=0;i<doctor1.size();i++){
tti=doctor1.get(i);
if(docit==tti.getDocid())
System.out.println(tti.toString());
}
}
}
这些是我的课
package samplee.java;
public class patientss {
int id;
String name;
int num;
String illness;
public String getIllness() {
return illness;
}
public void setIllness(String illness) {
this.illness = illness;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String toString(){
return name+" "+id+" "+num+ " "+illness;
}
}
这是我的博士课程:-
package samplee.java;
public class doctorss {
int docid;
String specialize;
public String getSpecialize() {
return specialize;
}
public void setSpecialize(String specialize) {
this.specialize = specialize;
}
public int getDocid() {
return docid;
}
public void setDocid(int docid) {
this.docid = docid;
}
public String getDocname() {
return docname;
}
public void setDocname(String docname) {
this.docname = docname;
}
public int getDocnum() {
return docnum;
}
public void setDocnum(int docnum) {
this.docnum = docnum;
}
String docname;
int docnum;
public String toString(){
return docname+" "+docid+" and "+docnum+" he specializes in"+specialize;
}
}
# 1 楼答案
首先,我想就您的代码发表一些评论:
Doctors
,而是Doctor
。在你的例子中,它描述的是单个实体,而不是一群医生或其他什么李>docid
、id
这样的字段命名,就足够了,因为它是在Doctor
类中定义的李>我将向您推荐以下课程(省略getters setters等细节,但我希望您能理解):
编辑: 当用户输入医生和病人时,你必须以某种方式“记住”他们。例如,使用array或
ArrayList
表示:因此,在需要预约的步骤中,您必须要求用户输入:医生id、患者id、疾病id和所需日期。然后你必须在“记忆”列表中找到医生、患者和疾病:
然后创建新的约会: