The void is just a regular void return type. The method you specified cannot return a value.
<T> is a parameterising the method, making it specific to whatever type you want to pass in. It's more for clarity than functional in that example. You could make it more useful by doing something like the following to limit the list that can be passed in to something like List<Integer> etc:
With other words, it's the *declaration* of T. Without it, the identifier T would be unknown in the rest of the method.
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus