1st question
In line 3 you instantiate a HashMap that is designed to store instances of List<String>. HashMap is a class (an implementation of the interface Map).
In line 4 you instantiate a List that is designed to store instances of String. List is an interface and cannot be instantiated directly. You must instantiate a class that implements this interface instead, such as an ArrayList or an anonymous inner class. While it may look that way, you don't instantiate a List in line 3, you only define the HashMap to store instances that implement List<String>. Instantiation takes place when you use the new keyword and this can't be followed by an interface alone.
2nd question
If that is necessary you can use the instanceof operator to check if an instance is of a specific type. Be aware that if one element in your list is of type ArrayList it does not mean that the others have to be.
You should generally not have to check that. If that is necessary (and you don't just do that out of curiosity) you could probably refactor your code in such way that it's not necessary to check that. The whole idea of interfaces is that groups of instances are treated the same way no matter if they're ArrayLists or LinkedLists or something else.