2016-12-19 4 views
0

Я пытаюсь создать простое консольное приложение, в котором задействованы клиенты, и я думаю о создании одного объекта для каждого посетителя, который посещает. так я думал о создании массива объектов, но я должен упомянуть число объектов, которые будут созданы заранее, как я могу динамически получать новые объекты с новым именем динамическиКак получить динамический массив объектов в java

import java.io.Console; 
import java.io.IOException; 
import java.util.Scanner; 


public class RentACarMain { 


     public static void main(String[] args) 
     { 

      int j=0,i,ch=0,inp; 


      Scanner sc=new Scanner(System.in); 

      CustomerDetails[] cd=new CustomerDetails[101]; 

      for(i=0;i<100;i++) 
      { 
       cd[i]=new CustomerDetails(); 

      } 
         do 
      { 


      System.out.println("Enter 1 to add new customer details"); 

      System.out.println("enter 2 to display details customers"); 
      System.out.println("press 3 exit"); 

      System.out.println("enter your choice"); 
      ch=Integer.parseInt(sc.next()); 
      sc.nextLine(); 


      switch(ch) 
      { 
      case 1: 
       j=j+1; 

       System.out.println("enter customer name..");  
       String cust_name_main=sc.nextLine(); 
       e[j].setCust_name(cust_name_main); 

       System.out.println("enter customer id"); 
       String c_id=sc.nextLine(); 
       e[j].setLicense_num(c_id); 

       break; 

      case 2: 

         e[j].display(); 

       } 

      }while(ch!=3); 



      } 

} 

вот теперь я не знаю, количество клиенты, которые собираются посетить ... так есть ли возможность динамически получать новые различные объекты того же класса

ответ

0

Вам нужно более динамичной коллекции, такие как ArrayList:

ArrayList<CustomerDetails> cd = new ArrayList<CustomerDetails>(); 

Затем вы можете добавить whate Веры количество элементов, которые вы могли бы хотеть:

cd.add(new CustomerDetails()); 
cd.add(new CustomerDetails()); 

Так как вы можете видеть, ArrayList отличается в синтаксисе регулярных массивов. Мол, чтобы получить элемент в определенном положении, вы бы не сделать cd[7] к примеру, но сделать это вместо:

cd.get(7); 

Here are some more examples о том, как использовать ArrayList, в том числе о том, как перебрать их.

+0

Фактически я получил часть arraylist..but cd.add (new CustomerDetails), как я могу вызвать функцию, которая находится в другом классе ... coz я не могу использовать этот объект класса напрямую – Ranjit

 Смежные вопросы

  • Нет связанных вопросов^_^