I would probably have used an int[1] array, to avoid the need for an extra type (and remembering what it is).  But I don't think it is needed if you can use Work<Integer>.