One step back.
Do you track places as well as hotels within places separately? Or just one, such as in Tokyo?
Arrays or collections are fine. Adding is more useful if you use a collection such as an ArrayList though. Arrays are not scalable, so if you add say two locations, then decide to add another two, you'll need to resize the array by creating a new array and then copying the existing data before inserting new data. Collections and Vectors excel at this since you can scale them both up and down very easily, and are typically iterated using the foreach style syntax.
You'll need to be handling a single (or multiple, not sure yet) arrays (or collection objects) for this. You can do so either at the class level by declaring a static array as a member property, OR you can create an array and pass it around from method to method to modify. Array pointer values are passed by reference in Java, but not the pointer itself (so you can modify an array within a function but you cannot modify what the array points at). So to keep it simple, I'd suggest either a collection OR a static class member that contains these.
header('HTTP/1.1 420 Enhance Your Calm');