Java 7 has some good support for pattern matching (PathMatcher) and recursive directory walking (Files.walkFileTree()). In the context of the original question, this page in Oracle's Java documentation is a good start:
Finding Files: http://docs.oracle.com/javase/tutorial/essential/io/find.html