Here's your task:
You want to remove Java from your environment. In order to do this effectively, you need to find all of the machines that have some version of Java installed so that you can analyze the problem, and ultimately begin removal efforts. Login to the Service Desk and produce a list of machines that have Java installed. I'll see you in a few hours.
1. For software like this, there are dozens of potential versions, and each one is a unique software.
2. Global search for something like Java* works, if you want to wade through 298 results, and click each relevant one to see computers.
3. You can use the Software Inventory and filter on all of the software versions you want. This will tell you how many machines each one is installed on, which is better, but you still have to click each one to see where it's installed. Alternatively, you can filter on Tag which is slightly easier, and hope that things were tagged right....but there's no real good way to manage tags overall that isn't mind-numbingly labor intensive.
4. Custom reports could solve this, because there is literally a report to see where a software is installed! But alas, it will only allow you to pick one software at a time.
This is something that an asset management system should be good at. My $0.02. Maybe I'm missing something.