gpt4 book ai didi

java - 使用数组让访客登录管理系统

转载 作者:太空宇宙 更新时间:2023-11-04 09:13:51 24 4
gpt4 key购买 nike

正如您从标题中可以清楚地猜到的那样,我是编程新手,并且不知道从哪里开始。我的任务是制作一个校园访客登录管理系统,具有临时数据存储和有限的人数。我是一名大一新生,我们还没有讨论过 SQL,因为它只适合大二学生。我的老师建议使用数组,因为我还是一个初学者。任何提示或想法将不胜感激。到目前为止,这就是我到目前为止所想出的,

        System.out.print("Enter number of visitors: ");
int number = input.nextInt();

//visitor's Information
String name[] = new String[number];
String department[] = new String[number];
String reason[] = new String[number];

System.out.println();

for(int i = 0; i<name.length;i++){
System.out.print("Enter full name: ");
name[i] = input.next();
System.out.print("\nEnter department: ");
department[i]= input.next();
System.out.print("\nEnter reason: ");
reason[i]= input.next();
}
System.out.println();


for(int i = 0; i<name.length;i++){
System.out.println("Name: "+name);
System.out.println("Department: " +department);
System.out.println("Reason: "+reason);
}


//visitor's id number
for(int i = 0; i<reason.length; i++) {
System.out.println(name[i]);
}
}

}

由于某种原因,结果显示的是地址,而不是姓名、部门和原因。我现在很迷茫

最佳答案

在 for 循环中,您没有访问数组的索引。您当前正在通过将对象打印到控制台而不提供索引来打印 String 类(数组的引用类型)的 toString 方法。

改变

for(int i = 0; i<name.length;i++){
System.out.println("Name: "+name);
System.out.println("Department: " +department);
System.out.println("Reason: "+reason);
}

for(int i = 0; i<name.length;i++){
System.out.println("Name: "+name[i]);
System.out.println("Department: " +department[i]);
System.out.println("Reason: "+reason[i]);
}

为了进一步改进您的代码,您可以尝试创建更多只做一件事的方法。例如打印出包含姓名、部门和原因的结果。可以将此功能移至名为 printResults 的方法。

当您有更多编程经验时,请尝试阅读一本由 Robert C. Martin 撰写的名为《Clean Code》的书。使用他书中提到的最佳实践将帮助您创建更好且可重用的代码。我个人认为这是每个专业开发人员的必读之作。

关于java - 使用数组让访客登录管理系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59342447/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com