Я решаю эту проблему в Hackerrank. Как я могу использовать оператор instanceof
в Java для успешной компиляции кода?
Ссылка: https://www.hackerrank.com/challenges/java-iterator
Неполный код:
import java.util.*;
public class Main
{
static Iterator func(ArrayList mylist)
{
Iterator it=mylist.iterator();
while(it.hasNext())
{
Object element = it.next();
if(~~Complete this line~~)//Hints: use instanceof operator
break;
}
return it;
}
public static void main(String []argh)
{
ArrayList mylist = new ArrayList();
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int m=sc.nextInt();
for(int i=0;i<n;i++)
{
mylist.add(sc.nextInt());
}
mylist.add("###");
for(int i=0;i<m;i++)
{
mylist.add(sc.next());
}
Iterator it=func(mylist);
while(it.hasNext())
{
Object element = it.next();
System.out.println((String)element);
}
}
}
Несмотря на то, что я сделал это с помощью if(element == "###")
, пожалуйста, объясните мне, как использовать оператор instanceof
в этом месте.
Редактировать: этот поток не смог предоставить ответы о том, как использовать этот оператор instanceof для проверки экземпляра специальной группы символов, такой как "###" в ArrayList. Пожалуйста, помогите мне понять. Извините, если я нарушаю здесь какое-либо правило.