Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 创建一个数组,允许用户最多输入3次数据,但每个输入可以单独完成,而不是一次性完成_Java_Arrays_Sorting_Multidimensional Array_Arraylist - Fatal编程技术网

Java 创建一个数组,允许用户最多输入3次数据,但每个输入可以单独完成,而不是一次性完成

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

如何创建允许用户以不同间隔输入其名称的数组。 目前,我需要一次输入所有名称来填充数组。在用名称填充数组时,一旦我选择在名称数组中输入新名称,以前键入的信息就会消失

我希望达到的目标: 1) 允许用户一次输入一个名称并退出主菜单,而无需填写整个名称数组

2) 输入第一个名称时,当我尝试在第二个间隔中键入另一个新名称时,我键入的现有名称将保留,第二个名称将存储在位置2而不是1

代码如下:

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开始的数字。