प्रदर्शन-वार, लगभग सभी मामलों में एक इंट तेज होता है। CPU को 32-बिट मानों के साथ कुशलतापूर्वक कार्य करने के लिए डिज़ाइन किया गया है।
छोटे मूल्यों से निपटने के लिए जटिल हैं। एक बाइट को पढ़ने के लिए, मान लीजिए, सीपीयू को 32-बिट ब्लॉक को पढ़ना है जिसमें यह शामिल है, और फिर ऊपरी 24 बिट्स को मास्क करना है।
एक बाइट लिखने के लिए, उसे गंतव्य 32-बिट ब्लॉक को पढ़ना होगा, निचले 8 बिट्स को वांछित बाइट मान के साथ अधिलेखित करना होगा, और पूरे 32-बिट ब्लॉक को फिर से लिखना होगा।
अंतरिक्ष-वार, निश्चित रूप से, आप छोटे डेटाटाइप का उपयोग करके कुछ बाइट्स बचाते हैं। इसलिए यदि आप कुछ मिलियन पंक्तियों वाली तालिका बना रहे हैं, तो छोटे डेटाटाइप विचार करने योग्य हो सकते हैं। (और यही एक अच्छा कारण हो सकता है कि आपको अपने डेटाबेस में छोटे डेटाटाइप का उपयोग क्यों करना चाहिए)
और शुद्धता के लिहाज से, एक इंट आसानी से ओवरफ्लो नहीं होता है। क्या होगा यदि आप सोचते हैं आपका मान एक बाइट के भीतर फ़िट होने वाला है, और फिर भविष्य में किसी बिंदु पर कोड में कुछ हानिरहित दिखने वाले परिवर्तन का अर्थ है कि बड़े मान इसमें संग्रहीत हो जाते हैं?
वे कुछ कारण हैं कि सभी अभिन्न डेटा के लिए int आपका डिफ़ॉल्ट डेटाटाइप क्यों होना चाहिए। केवल बाइट का उपयोग करें यदि आप वास्तव में मशीन बाइट्स को स्टोर करना चाहते हैं। केवल शॉर्ट्स का उपयोग करें यदि आप एक फ़ाइल प्रारूप या प्रोटोकॉल या समान के साथ काम कर रहे हैं जो वास्तव में 16-बिट पूर्णांक मान निर्दिष्ट करता है। यदि आप सामान्य रूप से केवल पूर्णांकों के साथ काम कर रहे हैं, तो उन्हें पूर्णांक बनाएं।