创建一个程序来归档刑事案件然后查看它们,允许添加新案件
Creating a program to file criminal cases and then view them, with new case being allowed to add
我正在创建一个程序,用于输入包含姓名、犯罪、犯罪日期等内容的刑事案件...我想创建一个程序,在从用户那里获取输入(即详细信息)后犯罪)它被存储起来,当用户选择查看案例时,新提交的案例也会添加到其中。这将是循环的,即,如果用户想再次输入案例,he/she 可能会这样做,并且新的案例将被添加到已经存在的案例中,包括之前提交的案例。
我需要一个主意!我需要一个关于如何做到这一点的想法!我该用什么?数组会有帮助吗?
下面的代码片段是一个非常基本的例子,说明了如何设计这样的东西 - 它应该让您基本了解如何扩展它,添加更多案例的详细信息,或者可能添加一些其他方法,例如仅查看带有特定名称的特定案例或删除已添加的案例。
向用户输入添加验证或将日期存储在更适合它的对象中,例如 java.time
可能是第一步。
java.util.ArrayList
可能是收纳箱子的最佳选择。
import java.util.ArrayList;
import java.util.Scanner;
public class CriminalCase {
//properties & getters
private String name;
public String getName(){return name;}
private String date;
public String getDate(){return date;}
//constructor
public CriminalCase(String name, String date){
this.name = name;
this.date = date;
}
public static void main(String[] args) {
//this ArrayList will be used to store the cases
ArrayList<CriminalCase> cases = new ArrayList<>();
boolean quit = false;
Scanner s = new Scanner(System.in);
while (!quit) {
System.out.println("To view current cases enter v\nto add a case enter a\nto quit enter q");
String input = s.nextLine();
switch(input){
case ("v"): {
System.out.println("The following cases exist:");
for (CriminalCase c : cases)
System.out.println("Name: " + c.getName() + " Date: " + c.getDate());
break;
}
case("a"):{
System.out.println("Enter a name:");
String name = s.nextLine();
System.out.println("Enter a date (e.g. 17.09.2015)");
String date = s.nextLine();
cases.add(new CriminalCase(name,date));
break;
}
case("q"):{
quit = true;
break;
}
/*
case("d"):{
//method to delete a case
}
*/
}
}
}
}
已解决。
import java.util.ArrayList;
import java.util.Scanner;
public class CriminalCase {
private String batput;
public String getBatput(){return batput;}
public CriminalCase(String batput){
this.batput = batput;
}
private static class robin
{
String Batman()
{
Scanner s=new Scanner (System.in);
System.out.println("Enter name.");
String a=s.nextLine();
System.out.println("Enter Date of birth.");
String b=s.nextLine();
System.out.println("Enter Sex.");
String c=s.nextLine();
System.out.println("Enter Crime Committed.");
String d=s.nextLine();
System.out.println("Enter Date of Crime Committed.");
String e=s.nextLine();
System.out.println("Enter Victim.");
String f=s.nextLine();
System.out.println();
String g=""+"\n"+""+"Name:- "+a +"\nDOB:- "+b +"\nSex:- "+c +"\nCrime Committed:- "+d +"\nDate of Crime Committed:- "+e +"\nVictim:- "+f;
return g;
}
}
public static void main(String[] args) {
ArrayList<CriminalCase> cases = new ArrayList<>();
boolean quit = false;
Scanner s = new Scanner(System.in);
robin j=new robin();
while (!quit) {
System.out.println("To view current cases enter v\nto add a case enter a\nto quit enter q");
String input = s.nextLine();
switch(input){
case ("v"): {
System.out.println("The following cases exist:");
for (CriminalCase c : cases)
System.out.println(c.getBatput());
break;
}
case("a"):{
String batput=j.Batman();
cases.add(new CriminalCase(batput));
break;
}
case("q"):{
quit = true;
break;
}
}
}
}
}
我正在创建一个程序,用于输入包含姓名、犯罪、犯罪日期等内容的刑事案件...我想创建一个程序,在从用户那里获取输入(即详细信息)后犯罪)它被存储起来,当用户选择查看案例时,新提交的案例也会添加到其中。这将是循环的,即,如果用户想再次输入案例,he/she 可能会这样做,并且新的案例将被添加到已经存在的案例中,包括之前提交的案例。
我需要一个主意!我需要一个关于如何做到这一点的想法!我该用什么?数组会有帮助吗?
下面的代码片段是一个非常基本的例子,说明了如何设计这样的东西 - 它应该让您基本了解如何扩展它,添加更多案例的详细信息,或者可能添加一些其他方法,例如仅查看带有特定名称的特定案例或删除已添加的案例。
向用户输入添加验证或将日期存储在更适合它的对象中,例如 java.time
可能是第一步。
java.util.ArrayList
可能是收纳箱子的最佳选择。
import java.util.ArrayList;
import java.util.Scanner;
public class CriminalCase {
//properties & getters
private String name;
public String getName(){return name;}
private String date;
public String getDate(){return date;}
//constructor
public CriminalCase(String name, String date){
this.name = name;
this.date = date;
}
public static void main(String[] args) {
//this ArrayList will be used to store the cases
ArrayList<CriminalCase> cases = new ArrayList<>();
boolean quit = false;
Scanner s = new Scanner(System.in);
while (!quit) {
System.out.println("To view current cases enter v\nto add a case enter a\nto quit enter q");
String input = s.nextLine();
switch(input){
case ("v"): {
System.out.println("The following cases exist:");
for (CriminalCase c : cases)
System.out.println("Name: " + c.getName() + " Date: " + c.getDate());
break;
}
case("a"):{
System.out.println("Enter a name:");
String name = s.nextLine();
System.out.println("Enter a date (e.g. 17.09.2015)");
String date = s.nextLine();
cases.add(new CriminalCase(name,date));
break;
}
case("q"):{
quit = true;
break;
}
/*
case("d"):{
//method to delete a case
}
*/
}
}
}
}
已解决。
import java.util.ArrayList;
import java.util.Scanner;
public class CriminalCase {
private String batput;
public String getBatput(){return batput;}
public CriminalCase(String batput){
this.batput = batput;
}
private static class robin
{
String Batman()
{
Scanner s=new Scanner (System.in);
System.out.println("Enter name.");
String a=s.nextLine();
System.out.println("Enter Date of birth.");
String b=s.nextLine();
System.out.println("Enter Sex.");
String c=s.nextLine();
System.out.println("Enter Crime Committed.");
String d=s.nextLine();
System.out.println("Enter Date of Crime Committed.");
String e=s.nextLine();
System.out.println("Enter Victim.");
String f=s.nextLine();
System.out.println();
String g=""+"\n"+""+"Name:- "+a +"\nDOB:- "+b +"\nSex:- "+c +"\nCrime Committed:- "+d +"\nDate of Crime Committed:- "+e +"\nVictim:- "+f;
return g;
}
}
public static void main(String[] args) {
ArrayList<CriminalCase> cases = new ArrayList<>();
boolean quit = false;
Scanner s = new Scanner(System.in);
robin j=new robin();
while (!quit) {
System.out.println("To view current cases enter v\nto add a case enter a\nto quit enter q");
String input = s.nextLine();
switch(input){
case ("v"): {
System.out.println("The following cases exist:");
for (CriminalCase c : cases)
System.out.println(c.getBatput());
break;
}
case("a"):{
String batput=j.Batman();
cases.add(new CriminalCase(batput));
break;
}
case("q"):{
quit = true;
break;
}
}
}
}
}