I came across a class using Integer variables to capture size to be used in a for loop. Is this good practice or should we use the int primitive data type?
This approach is not good in practice, use int whenever possible. Usage of Integer indicates that this particular variable can be null (or it was inside a collection, damn generics...) - which is not the case.
Also using Integer introduces an extra overhead of boxing and unboxing.