Współczesne 32 i 64-bitowe procesory są tak skonstruowane, że posługują się w rzeczywistości danymi, które realnie odpowiadają w Javie typom int oraz long (takie dane są przesyłane między rejestrami oraz pamięcią RAM). Każda zmienna, która jest krótsza musi zostać automatycznie promowana do tych rozmiarów. Z tego samego powodu dane są rozkładane w RAM co 8 bajtów. Jeżeli wyrównania nie będzie, to czasy dostępu nie będą wynosić 4 czy 8 taktów procesora, lecz 20-30 - tyle ile może zająć najgorszy przypadek. Podobnie z trafianiem danych w cache.
Wiadomo, że najważniejszą zaletą komputerów jest szybkość obliczeń. Jeszcze dekadę temu trzeba było iść na kompromis między szybkością, a wielkością używanej pamięci - a to dlatego, że pamięć była droga w stosunku do pojemności. Użycie coraz większych szerokości danych w bitach nie zmniejsza szybkości obliczeń ponieważ wszystkie bity są przesyłane i obliczane zazwyczaj równolegle. Zmniejszanie więc danych może mieć więc jedynie sens w przetwarzaniu szeregowym, na nośnikach masowych oraz do użycia w przypadku reprezentacji znaków. Od kiedy ceny pamięci RAM stale spadają nie ma żadnego powodu powodować szczególnych zabiegów w oszczędzaniu pamięci kosztem znaczącej utraty szybkości przetwarzania. Znacznie taniej i prościej jest użyć np. kompresji, która daje możliwość upakowania danych z dokładnością oszczędności do pojedynczych bitów, a często powoduje nawet przyspieszenie działania programów (sic!) przez zmniejszenie liczby przesyłanych danych na powolne nośniki i łącza.
Short czyli liczba 16-bitowa, ani nie ma zalet jako dane obliczane szybciej niż int, ani nie ma zalety szczególnie dużej oszczędności pamięci masowej. Dlatego w przyszłości dominować będą typy long w pamięci RAM plus kompresja oraz byte na nośnikach masowych. Obecnie prawdziwym zastosowaniem danych o szerokości short jest typ char w wersji unicode, który też jest daną 16-bitową, a może pomieścić 95% znaków wszystkich języków świata. Dlatego short jako dana liczbowa nie ma obecnie większej racji bytu. Dodatkowo Java ze ścisłym przestrzeganiem konwersji w celu wymuszenia utraty precyzji bardzo utrudnia korzystanie z krótszych liczb, a w przeciwieństwie do typu byte nie daje w zamian znaczących zalet.