Dari segi kinerja, int lebih cepat di hampir semua kasus. CPU dirancang untuk bekerja secara efisien dengan nilai 32-bit.
Nilai yang lebih pendek rumit untuk ditangani. Untuk membaca satu byte, katakanlah, CPU harus membaca blok 32-bit yang memuatnya, dan kemudian menutupi 24 bit teratas.
Untuk menulis satu byte, ia harus membaca blok 32-bit tujuan, menimpa 8 bit yang lebih rendah dengan nilai byte yang diinginkan, dan menulis kembali seluruh blok 32-bit.
Dari segi ruang, tentu saja, Anda menghemat beberapa byte dengan menggunakan tipe data yang lebih kecil. Jadi, jika Anda membuat tabel dengan beberapa juta baris, maka tipe data yang lebih pendek mungkin layak dipertimbangkan. (Dan hal yang sama mungkin menjadi alasan bagus mengapa Anda harus menggunakan tipe data yang lebih kecil di database Anda)
Dan dari segi kebenaran, int tidak mudah meluap. Bagaimana jika Anda berpikir nilai Anda akan muat dalam satu byte, dan kemudian di beberapa titik di masa depan beberapa perubahan yang tampak tidak berbahaya pada kode berarti nilai yang lebih besar disimpan ke dalamnya?
Itulah beberapa alasan mengapa int harus menjadi tipe data default Anda untuk semua data integral. Hanya gunakan byte jika Anda benar-benar ingin menyimpan byte mesin. Hanya gunakan celana pendek jika Anda berurusan dengan format file atau protokol atau serupa yang benar-benar menentukan nilai integer 16-bit. Jika Anda hanya berurusan dengan bilangan bulat secara umum, buatlah menjadi int.