FunMan czekaj czekaj... Nie można przekazać referencji? Każdy obiekt dziedziczący po Object w javie jest domyślnie przekazywany przez referencję! Mylisz człowieka! Sytuacja wygląda tak, wszystko jest teoretycznie przekazywane przez wartość, ale w przypadku obiektów ta wartość to wskaźnik, także w funkcji operujesz już na tym samym obiekcie. Tylko i wyłącznie typy PRYMITYWNE są przekazywane jako wartość. int jest typem prymitywnym, dlatego jeśli chcesz przekazać inta przez referencję to polecam po prostu użyć typu Integer, który działa tak samo ale jest już obiektem dziedziczącym po Object