If you choose to have your Library class store its Books in an array, then
you should at least start out by creating an array for it to use. As it is you have only a Book[] variable which is null because it doesn't yet refer to an array object.
But naturally you're asking "How big should the array be, then?" And after a while you'll be asking "How do I know how much of the array is full?" So your question about whether you should use something else is a good question.
First of all if your assignment says you should use an array, then you should use an array. The question of "what else" doesn't arise. Otherwise you're better off using some kind of List (an ArrayList would be reasonable) and then you don't have to worry about how big it is or how full it is. So: Are you required to use an array? Or if you aren't, have you come to List in your studies yet?