hmm true though the returned item is kinda convenient when needing to check if the method actually added the item or if the inventory was full and null was added.
A thought would be for it to be changed to return an item array with for the case of 100 iron ore would be an item[2] array with the values [64][36] in it, if the 36 wasn't able to be added then it would be [64][null] meaning the last items were not added successfully. Similarly for adding 150 iron ore it would be [64][64][22] or if only one slot was free [64][null][null] and if two [64][64][null]. Not sure how good a solution this is though, depends on your needs and the way you are handling things on the game's side.
Another solution would be for the method to be changed into a boolean and it would first check if there is enough space for all items. If there is enough space for all items it adds them and returns true else if at least one item cannot be added then it doesn't add anything and returns false.