জাভাতে int এবং ডাবল টাইপ সম্পর্কে সংক্ষেপে
int হল পূর্ণসংখ্যার জন্য একটি আদিম জাভা টাইপ (যেমন -25, 0, 1828182845)। এই ধরনের একটি পরিবর্তনশীল মান সংরক্ষণ করতে 32 বিট ব্যবহার করে। int সংখ্যার পরিসর হল -231 থেকে 231 - 1 বা, যা একই, -2147483648 থেকে 2147483647 পর্যন্ত। জাভাতে ডাবল টাইপ ফ্লোটিং-পয়েন্ট সংখ্যার প্রতিনিধিত্ব করে, মেমরিতে 64 বিট বরাদ্দ করে এবং টাইপের পরিসর হল -1.7 *10308 থেকে 1.7*10308। আপনি যদি একই আকারে int-এর পরিসর উপস্থাপন করেন, তাহলে তা হবে -2*109 বা +2*109। আমি মনে করি এটা স্পষ্ট যে int-এর যেকোন সংখ্যক টাইপ অনেকগুলো ডবল আদিম টাইপের জন্য বরাদ্দ করা মেমরিতে ফিট হবে। উপরন্তু, যেকোন পূর্ণসংখ্যাকে শূন্য ভগ্নাংশের সাথে একটি ভগ্নাংশ সংখ্যা হিসাবে উপস্থাপন করা যেতে পারে। গণিতের দৃষ্টিকোণ থেকে, এতে কোন সন্দেহ নেই যে: 5 = 5.0 বা -57.0 = -57।দ্বিগুণ int রূপান্তর
জাভা দৃষ্টিকোণ থেকে, ডবল এবং int প্রকারগুলিও সামঞ্জস্যপূর্ণ। যেহেতু int-এ দ্বিগুণ রূপান্তর করা হল বড় থেকে ছোট কাস্ট করা, এই ধরনের রূপান্তরকে অন্তর্নিহিত টাইপ কেসিং বা প্রশস্তকরণ বলা হয়। আপনি জাভাতে স্বয়ংক্রিয়ভাবে int-কে দ্বিগুণে রূপান্তর করতে পারেন, একটি ডবল ভেরিয়েবলে int মান নির্ধারণ করে। টাইপকাস্টিংয়ের একটি কোড উদাহরণ দেওয়া যাক:public class intToDouble {
public static void main(String[] args) {
int myInt1 = 10;
int myInt2 = 2147483647;
double myDouble1, myDouble2;
System.out.println("my integers are: " + myInt1 + ", " + myInt2);
myDouble1 = myInt1;
myDouble2 = myInt2;
System.out.println("after typecasting/widening to double: " + myDouble1 + ", " + myDouble2);
}
}
এখানে আউটপুট আছে:
আমার পূর্ণসংখ্যাগুলি হল: 10, 2147483647 টাইপকাস্ট করার পরে/ দ্বিগুণ প্রসারিত করার পরে: 10.0, 2.147483647E9
নোট: এখানে E9 মানে 109, একে বৈজ্ঞানিক স্বরলিপি বলা হয়। আরও মনে রাখবেন যে দ্বৈত সংখ্যাগুলি সাধারণত ভগ্নাংশকে আলাদা করে একটি পিরিয়ড দিয়ে লেখা হয়। আপনি যদি দ্বিগুণের একটি ভেরিয়েবল ঘোষণা করেন এবং এটিতে একটি মান রাখেন তবে এটি করার দরকার নেই, তবে আউটপুটে দ্বিগুণ সংখ্যার সর্বদা একটি ভগ্নাংশ থাকবে, এমনকি এটি শূন্য হলেও।
নিরপেক্ষ সংখ্যাসূচক অপারেশন ব্যবহার করে int-কে দ্বিগুণে রূপান্তর করা হচ্ছে
তদুপরি, জাভাতে বিভিন্ন ধরণের ভেরিয়েবলের সমস্ত সাংখ্যিক ক্রিয়াকলাপ টাইপ প্রসারিত করে। অর্থাৎ, অপারেশনের ফলাফল আরও বিস্তৃত ধরনের হবে। অতএব, int থেকে দ্বিগুণ রূপান্তর করতে, আপনি "নিরপেক্ষ" অপারেশন ব্যবহার করতে পারেন। উদাহরণস্বরূপ, একটি int-কে 1.0 (একটি দ্বিগুণ সংখ্যা) দ্বারা গুণ করুন বা একটি int-এ 0.0 যোগ করুন। এখানে এই ধরনের টাইপকাস্টিংয়ের একটি উদাহরণ রয়েছে:public class intToDouble {
public static void main(String[] args) {
double a = 1; //you can also write 1.0 here. If you print it out it will be 1.0
int b = 5, x = 7;
System.out.println(x + 0.0);
System.out.println(a*b);
}
}
আউটপুট হল:
7.0 5.0
যাইহোক, আপনি দ্বিগুণ রূপান্তর করতে পারেন না শুধুমাত্র int, কিন্তু সব সংখ্যাসূচক আদিম ধরনের. এখানে সবচেয়ে ছোট থেকে বৃহত্তম রূপান্তরের সম্ভাব্য ক্রম রয়েছে:
বাইট -> শর্ট -> চর -> ইন্টি -> লং -> ফ্লোট -> ডাবল