What is the purpose of `select()` in Java NIO's `Selector`?
`select()` is used to block the current thread until at least one `Channel` is ready for an I/O operation, allowing a thread to handle multiple `Channels` efficiently.
Exactly! The `select()` method is crucial in event-driven programming, making non-blocking I/O more scalable.
Can you explain the difference between `select()` and `selectNow()` in how they handle blocking behavior?