آموزش golang - قدم ششم: انواع داده

سلام دوستان، این قسمت می خوام درمورد انواع داده تو go lang توضیح بدم.همون طور که تو قسمت های قبلی گفتم go lang یه زبان برنامه نویسی static type هست. برای همین باید به نوع داده های موجود و کاربرد هر کدوم مسلط باشیم. انواع داده:نوع داده int:برای مقادیر عددی، مقدار پیشفرض صفر و مقدار حجم از حافظه که استفاده می کنه بسته به ۳۲ یا ۶۴ بیتی بودن سیستم عامل ۴ یا ۸ بایت هست.نوع داده int8:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد بین ۱۲۷- تا ۱۲۷ و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده int16:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد بین ۳۲۷۶۸- تا ۳۲۷۶۷ و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده int32:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد بین ۲۱۴۷۴۸۳۶۴۸- تا ۲۱۴۷۴۸۳۶۴۷ و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده int64:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد بین ۹۲۲۳۳۷۲۰۳۶۸۵۴۷۷۵۸۰۸- تا ۹۲۲۳۳۷۲۰۳۶۸۵۴۷۷۵۸۰۷ و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده uint:برای مقادیر عددی نامنفی (صفر و مثبت)، مقدار پیشفرض صفر و مقدار حجم از حافظه که استفاده می کنه بسته به ۳۲ یا ۶۴ بیتی بودن سیستم عامل ۴ یا ۸ بایت هست.نوع داده uint8:برای مقادیر عددی نامنفی، مقدار پیشفرض صفر و برای اعداد بین ۰ تا ۲۵۶ و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده uint16:برای مقادیر عددی نامنفی، مقدار پیشفرض صفر و برای اعداد بین ۰ تا ۶۵۵۳۵ و مقدار حجم از حافظه که استفاده می کنه ۲ بایت هست.نوع داده uint32:برای مقادیر عددی نامنفی، مقدار پیشفرض صفر و برای اعداد بین ۰ تا ۶۲۹۴۹۶۷۲۹۵ و مقدار حجم از حافظه که استفاده می کنه ۴ بایت هست.نوع داده uint64:برای مقادیر عددی نامنفی، مقدار پیشفرض صفر و برای اعداد بین ۰ تا ۱۸۴۴۶۷۴۴۰۷۳۷۰۹۵۵۱۶۱۵ و مقدار حجم از حافظه که استفاده می کنه ۸ بایت هست.نوع داده uintptr:برای مقادیر عددی نامنفی خیلی بزرگ، مقدار پیشفرض صفر و مقدار حجم از حافظه که استفاده می کنه ۸ بایت هست.نوع داده float32:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد IEEE-754 و مقدار حجم از حافظه که استفاده می کنه ۴ بایت هست.نوع داده float64:برای مقادیر عددی، مقدار پیشفرض صفر و برای اعداد IEEE-754 و مقدار حجم از حافظه که استفاده می کنه 8 بایت هست.نوع داده complex64:برای مقادیر عددی مختلط و مقدار حجم از حافظه که استفاده می کنه ۸ بایت هست.نوع داده complex128:برای مقادیر عددی مختلط و مقدار حجم از حافظه که استفاده می کنه ۱۶ بایت هست.نوع داده bool:برای مقادیر منطقی (صحیح و غلط)، مقدار پیشفرض false و مقادیر قابل قبول true, false و مقدار حجم از حافظه که استفاده می کنه ۱ بایت هست.نوع داده string:برای مقادیر رشته ای (مثل اسم و ...)، مقدار پیشفرض "" (رشته ی خالی) و مقدار حجم از حافظه که استفاده می کنه ۸ بایت هست.نوع داده byte:این نوع داده نام مستعار برای uint8 می باشد.نوع داده rune:این نوع داده نام مستعار برای int32 می باشد.سفارشی سازی نوع داده هانام گذاری جدید:برای نوع داده رشته‌ای، عددی و بول، می‌توان نام سفارشی جدید انتخاب و در پروژه استفاده کرد:/* type alias */ // boolean and bool define same type type boolean = bool // content and string define same type type content = string // UI8 and uint8 define same type type UI8 = uint8ایجاد نوع داده معادل:برای نوع داده های موجود می توان یک نمونه جدید ایجاد کرد:type state bool type ID uint8 https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%85%D9%82%D8%AF%D9%85%D8%A7%D8%AA%DB%8C-golang-%D9%82%D8%AF%D9%85-%D8%B5%D9%81%D8%B1-ufv22zb4j3bq https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D9%85%D9%82%D8%AF%D9%85%D8%A7%D8%AA%DB%8C-golang-%D8%A8%D8%AE%D8%B4-%D8%AF%D9%88%D9%85-wyvs1idjyan2 https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D8%B3%D9%88%D9%85-e3mxmjr1mp74 https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%DA%86%D9%87%D8%A7%D8%B1%D9%85-ydltpxgtgdlj https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%BE%D9%86%D8%AC%D9%85-regehw9odr8y https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D8%B4%D8%B4%D9%85-k6cpaqgybxz2 https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%87%D9%81%D8%AA%D9%85-jf9cn4h6fgri https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%87%D9%81%D8%AA%D9%85-%D9%85%D8%AA%D8%BA%DB%8C%D8%B1%D9%87%D8%A7-%D9%88-constant-oqvlbp5q2hg6 https://virgool.io/@saeedheydari/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-golang-%D9%82%D8%AF%D9%85-%D9%86%D9%87%D9%85-%D8%AA%D8%A7%D8%A8%D8%B9-nat6a2yfyqe3