2016-04-09 8 views
0

Şu anda yazdırmak için HashMap'ımdan seçili bir Word'ü yazdırmaya çalışıyorum.İlk kez doğru çıktı, ancak ilk değeri verdikten sonra her seferinde, ne olduğumu herkes görebilir yanlış mı yapıyorsun?HashMap ve Baskı Değerleri üzerinde yineleme nasıl yazdırılır

public void searchIndex() throws FileNotFoundException, IOException { 
     Scanner sc = new Scanner(System.in); 
     System.out.println("Please Enter a word to search"); 
     String entry = sc.nextLine().toLowerCase(); 

     String key = null; 
     String value = null; 
     Set<Integer> indices = null; 
     for (String search : index.keySet()) { 
      for (WordEntry values : index.values()) { 

       key = search; 
       value = values.getDefinition(); 
       indices = values.getIndices(); 
      } 

     } 
     System.out.println("Word " + key + " And " + value + indices); 
     System.out.println("Do you wish to continue searching,'Yes' if so"); 
     String answer = sc.nextLine(); 
     if (answer.equalsIgnoreCase("Yes")) { 
      searchIndex(); 

Çıktı:

'Evet' evet

eğer öyleyse, Aramaya devam etmek istiyor musunuz bir

sarı

Kelime sarı arama sözcüğü Ve renk girin Lütfen

Lütfen bir kelime giriniz. Araması

açık

Kelime sarı Ve renk

Eğer arama, 'Evet' ise bu bloğunda böylece

+1

Örnek giriş ve çıkışı ve beklenen çıktıyı paylaşın – Hackerdarshi

+2

Ne olmasını beklediğinizden emin değilim, ancak kullanıcıdan aldığınız girdiyi asla kullanmıyorsunuz gibi görünüyor - "giriş" hiç kullanılmıyor. –

+0

Maalesef, hashmap'da bir kelime aramaya çalışıyorum, ilk kez bir değer veriyor, sonra da aramaya devam ettiğimde başka bir sözcük seçiyorum ama ilk değeri döndürüyor –

cevap

0

devam etmek istiyor musunuz:

for (String search : index.keySet()) { 
    for (WordEntry values : index.values()) { 
     key = search; 
     value = values.getDefinition(); 
     indices = values.getIndices(); 
    } 
} 

Sen değerlerini ayarlarken key, value ve indiceskoşulsuz olarak.

Bu girdi ne olursa olsun, her zaman set anlamına gelir: index son tuşa

  • key. index içinde son değerin tanımına
  • value. index'da son değerin son değerlerine
  • Ve indices.

Ve sanırım, Sarı bu index içinde son öğedir. Böylece söz konusu çıktıyı alırsınız.

Girişe bağlı bazı koşullara göre key, value ve indices değerlerini ayarlamanız gerektiğini düşünüyorum.

İlgili konular