2016-03-30 16 views
0

Kullanıcıdan Honda model araba modelini yazmasını ve Honda sınıfına erişmesini isteyen bir program yapıyorum. Modeldeki modelden sonra, Honda modeli örneği olan "Civic" i seçmesi istenir. "Civic" yazdığında, farklı yıllar 2000.2013 vs. geliyor. O araba hakkında bilgi almaktan bir yıl seçiyor.Java - Bir diziye erişmek için kullanıcı girdisi almak daha sonra yazdırma bilgilerini yazdır

Kullanıcının, araç modelini yazıp sınıfa erişmesini isteyen ilk bölümü zaten var. Çok fazla bilgi eklemeye çalışmıyorum, bu sadece üzerinde çalıştığım bir proje.

import java.util.Scanner; 

public class carMain { 
    public static void main(String[] args) { 
     Scanner input = new Scanner(System.in); 

     Honda hondaMain = new Honda("civic"); 

     System.out.println("Welcome to GoAuto. Search from thousands of cars. \n"); 
     System.out.println("Please enter the brand of car you would like to search:"); 
     String carBrand = input.nextLine(); 

     if (carBrand.equalsIgnoreCase("Honda") == true) { 

      System.out.println("You are now in the Honda class"); 
      //model type 
      String carBrand1 = input.nextLine(); 
     } 
    } 
} 

ben araba modelleri ve yıl hakkında bilgi depolamak için bir dizi oluşturmak gerekir tahmin ediyorum ama bunun nasıl emin değilim.

public class Honda { 
    String c; 
    Honda(String civi) { 
     c = civi; 
    } 

    void simplemsg() { 
     System.out.println("You are now in Honda Database"); 
    } 
} 
+0

Bir çeşit veri tabanında saklamak mümkün mü? Bu, kullanıcıya erişebilmenizi ve verilerin görüntülenmesini kolaylaştıracaktır – LearningPhase

+1

Bu sorunun kapsamından dolayı bu soruyu soruyorum: bu bir ev ödevi için mi yoksa üretim için bir şey mi? Veri yapısı oldukça büyük olduğundan ve sürdürülemez hale geleceğinden, dizileri kullanmam. @LearningPhase'in belirttiği gibi, bir veri tabanı gerçek bir şey için bu sorunun çözümünün bir parçasıdır. – KevinO

+0

Konu dışı ama 'if (boolean == true)' gereksizdir. “If (boolean)' yazabilirsiniz. – Gendarme

cevap

0

Yeni başlayanlar için, her seviyeyi temsil eden sınıflar oluşturmak isteyeceğinizi düşünüyorum. Mesela ..

public class Make(){ 
    //Add class properties 
    List<Models> models = new ArrayList(); 


    public function Model get_model_by_name(String name) { 
     //int index = search for matching Model.name.. 
     return this.models(index) 
} 

public class Model(){ 
    //Add class properties 
    List<Years> years = new ArrayList(); 


    public function Model get_year_by_name(String name) { 
     //int index = search for matching Year.name.. 
     return this.models(index) 
} 

public class Year(){ 
    //Add class properties 
    String info; 
    String info2; 
} 

Ardından ana yönteminde, sen Açıkçası bu sözde koddur .. şöyle değerlerini başlatmak için

//Initialize database 
List<Make> database = new arrayList(); 
Make ford = new Make(<insert values for all properties>) 
database.add(ford); 

// Access ford.. 
System.out.println(ford.get_year_by_name(<whatever value user passed in>) 

isteyeyim ve ne olursa olsun kurucular eklemek gerekir ve İstediğiniz özelliklerin yanı sıra uygun alıcılar ve ayarlayıcılar. İdeal durum, bir veritabanı arayışını veya bir çeşit numaralandırma dosyasını kullanacaktır. İki boyutlu diziler içine bakmak, bir dizideki her iki yıl ve araba bilgileri saklamak istese

+0

Garip Java sözdizimi;) –

0

Sen equalsIgnoreCase

if(carBrand.equalsIgnoreCase("Honda")){ 

sonra == true koymak gerekmez. Diğer cevaplarda da belirtildiği gibi, bu kodları kodlamak için bazı daha uyumlu yöntemler arayabilirdiniz

İlgili konular