Java 创建一个数组,允许用户最多输入3次数据,但每个输入可以单独完成,而不是一次性完成
如何创建允许用户以不同间隔输入其名称的数组。 目前,我需要一次输入所有名称来填充数组。在用名称填充数组时,一旦我选择在名称数组中输入新名称,以前键入的信息就会消失 我希望达到的目标: 1) 允许用户一次输入一个名称并退出主菜单,而无需填写整个名称数组 2) 输入第一个名称时,当我尝试在第二个间隔中键入另一个新名称时,我键入的现有名称将保留,第二个名称将存储在位置2而不是1 代码如下:Java 创建一个数组,允许用户最多输入3次数据,但每个输入可以单独完成,而不是一次性完成,java,arrays,sorting,multidimensional-array,arraylist,Java,Arrays,Sorting,Multidimensional Array,Arraylist,如何创建允许用户以不同间隔输入其名称的数组。 目前,我需要一次输入所有名称来填充数组。在用名称填充数组时,一旦我选择在名称数组中输入新名称,以前键入的信息就会消失 我希望达到的目标: 1) 允许用户一次输入一个名称并退出主菜单,而无需填写整个名称数组 2) 输入第一个名称时,当我尝试在第二个间隔中键入另一个新名称时,我键入的现有名称将保留,第二个名称将存储在位置2而不是1 代码如下: import java.util.Scanner; import java.util.*; public c
import java.util.Scanner;
import java.util.*;
public class test
{
public static void main(String[] args)
{
Scanner console = new Scanner (System.in);
int[] values = new int[3];
int[] pNumber= new int[3];
String[] name= new String[3];
//double[] height= new double[25];
//double[] weight=new double[25];
char choose;
do
{
displayMenu();
String choice=console.nextLine();
choose=choice.charAt(0);
switch(choose)
{
case '1' : queuePatient(pNumber,name);
//case '1' : queuePatient(studentNumber,name,height,weight);
break;
/*case '2' : callNextPatient(pNumber,name);
break;
case '3' : listPatients(pNumber,name);
break;
case '4' : searchPatient(pNumber,name);
break; */
case '0' : System.out.println("Exit");
break;
default : System.out.println("Invalid");
break;
}
}while(choose!='0');
System.exit(0);
}
private static void displayMenu()
{
System.out.println("\n Menu: ");
System.out.println("1. Queue a Patient: ");
System.out.println("2. Call Next Patient: ");
System.out.println("3. List Patients in Queue: ");
System.out.println("4. Search A Patient's Queue Position ");
System.out.println("0. Exit ");
System.out.print("Enter your choice: ");
}
private static void queuePatient(int[] pNumber,String[] name)
{
Scanner kb = new Scanner (System.in);
for(int i = 0 ;i <= 3;i++)
{
if(i==3){
System.out.println("Queue is full.");
break;
}
System.out.println("Patient Number " + (i+1));
System.out.print("Enter the Patient Name: \n");
name[i] = kb.nextLine();
System.out.println(Arrays.toString(name));
break;
}
}
}
/*
private static void callNextPatient(String[] pNumber,String[] name)
{
System.out.println("S/No " + "Queue No " + "Patient Name \t \t \t" );
for(int n=0;n<25;n++)
{
if(!pNumber[n].equals("END"))
{
System.out.println((n+1) +"\t"+ pNumber[n] +"\t" + name[n]+"\t"+ "\t"+ "\t");
}
else
break;
}
private static void listPatients(String[] pNumber,String[] name)
{
System.out.println("S/No " + "Queue No " + "Patient Name \t \t \t" );
for(int n=0;n<25;n++)
{
if(!pNumber[n].equals("END"))
{
System.out.println((n+1) +"\t"+ pNumber[n] +"\t" + name[n]+"\t"+ "\t"+ "\t");
}
else
break;
}
}
private static void searchPatient(String[] pNumber,String[] name)
{
System.out.println("S/No " + "Queue No " + "Patient Name \t \t \t" );
for(int n=0;n<25;n++)
{
if(!pNumber[n].equals("END"))
{
System.out.println((n+1) +"\t"+ pNumber[n] +"\t" + name[n]+"\t"+ "\t"+ "\t");
}
else
break;
}*/
import java.util.Scanner;
导入java.util.*;
公开课考试
{
公共静态void main(字符串[]args)
{
扫描仪控制台=新扫描仪(System.in);
int[]值=新的int[3];
int[]pNumber=新的int[3];
字符串[]名称=新字符串[3];
//双精度[]高度=新双精度[25];
//双倍[]重量=新的双倍[25];
字符选择;
做
{
显示菜单();
String choice=console.nextLine();
choose=choose.charAt(0);
开关(选择)
{
案例“1”:排队的患者(编号、姓名);
//案例“1”:患者(学号、姓名、身高、体重);
打破
/*案例“2”:callNextPatient(pNumber,name);
打破
案例“3”:列出患者(编号、姓名);
打破
案例“4”:搜索患者(编号、姓名);
中断;*/
案例“0”:System.out.println(“退出”);
打破
默认值:System.out.println(“无效”);
打破
}
}while(选择!=“0”);
系统出口(0);
}
私有静态void显示菜单()
{
System.out.println(“\n菜单:”);
System.out.println(“1.将患者排队:”);
System.out.println(“2.呼叫下一位患者:”);
System.out.println(“3.列出队列中的患者:”);
System.out.println(“4.搜索患者的队列位置”);
System.out.println(“0.Exit”);
System.out.print(“输入您的选择:”);
}
私有静态无效队列(int[]pNumber,String[]name)
{
扫描仪kb=新扫描仪(System.in);
对于(int i=0;i,可以使用ArrayList
要创建ArrayList,请执行以下操作:
ArrayList<String> arrayName = new ArrayList<String>();
arrayName.add("new element");
您可以在这里了解更多信息:亲爱的康诺莱莎,感谢您的回复。但我似乎不明白您的意思。我会仔细阅读您所说的。我已经尝试了4天不同的方法,但似乎没有解决或接近我的目标。我已附上我的代码,您能给我一些建议吗。真诚地,你的问题没有真正意义。如果你想使用普通数组,只需执行“variablename[x]=”new name“即可访问其元素其中x是您要编辑的索引编号。如果您能提供一个更清晰的问题,那么我可能会提供帮助?我不确定您想要什么。我需要携带一个数组,该数组保存最多25名患者的列表。患者姓名存储在队列中,系统将允许诊所工作人员执行以下任务:-队列a patient方法queuePatient()对患者排队。此方法接收以下参数:姓名数组、患者姓名和计数,用于跟踪系统中排队的患者数量。如果队列已满,则该方法显示消息队列已满。如果队列尚未达到满容量,则该方法应将患者姓名放入队列,更新计数并以这种格式显示一条消息:name位于位置#n,其中name是进入队列的患者姓名,n是从1开始的数字。