If a method populates/modifies an object, would it be preferable to return the object or to keep the return type as void and the method would modify the Object through its r
I depends on your style, but one advantage of returning: you could call populate(o).doSomethingElse();, i.e. you can chain method calls.
populate(o).doSomethingElse();
Have a look at how StringBuilder does that for example, which allows things like this new StringBuilder().append("a").append("b")....
StringBuilder
new StringBuilder().append("a").append("b")....