2016-04-29 2 views
1
package javaapplication1; 

import java.io.BufferedReader; 
import java.io.IOException; 
import java.io.InputStreamReader; 
import java.util.ArrayList; 
public class arrrrr { 
    public static void main(String[] args) throws IOException { 
     String n,m; 

     BufferedReader br=new BufferedReader(new InputStreamReader(System.in)); 

     ArrayList l1=new ArrayList(); 
     l1.add("india"); 
     l1.add("chennai"); 
     l1.add("tamilnadu"); 
     l1.add("mumbai"); 
     n=br.readLine(); 
     for(int j=0;j<4;j++) 
     { 
      if(n==l1.get(j)) 
      { 
       System.out.println("The array location :"+"l1["+j+"]"); 
      } 
     } 
    } 
} 

Я хочу найти расположение массива. При задании ввода программа автоматически завершает работу. Если я присваиваю значение n, он работает идеально. Я хочу знать, почему программы выходят после ввода ввода.программа выходит после ввода строки String

+0

Не забудьте добавить 'br.readLine()' в конце, чтобы ваша программа дождалась некоторого ввода до выхода. – npinti

ответ

1

Изменить это:

if(n==l1.get(j)) 

к этому:

if(n.equals(l1.get(j))) 

== Причина проверяет ссылки, но равно будет проверять, если строки равны.

+0

спасибо за помощь ... –

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