أنواع البيانات في Golang

يحدد نوع البيانات نوع البيانات التي يمكن أن يحتوي عليها متغير Golang صالح . في لغة Go، يتم تقسيم الأنواع إلى أربع فئات على النحو التالي:

أنواع البيانات في Golang

  • الأنواع الأساسية: الأرقام والسلاسل والقيم المنطقية
  • أنواع التجميع: المصفوفات والهياكل
  • أنواع المرجع: المؤشر، والشريحة، والخريطة، والوظيفة، والقناة
  • نوع الواجهة

سنناقش هنا أنواع البيانات الأساسية في لغة Go. يتم تصنيفها إلى ثلاث فئات فرعية:

  • رقم
  • منطقي
  • سلسلة

أنواع البيانات الشائعة في Golang

الأرقام في جولانج

في لغة Go، يتم تقسيم الأرقام إلى ثلاث فئات فرعية:

الأعداد الصحيحة: في لغة Go، تأتي الأعداد الصحيحة الموقعة وغير الموقعة بأربعة أحجام مختلفة كما هو موضح في الجدول أدناه. يتم تمثيل الأعداد الصحيحة الموقعة بواسطة intويتم تمثيل الأعداد الصحيحة غير الموقعة بواسطة uint.

العمليات الحسابية الممكنة: الجمع، الطرح، الضرب، القسمة، الباقي

نوع البيانات

يصف

int8 عدد صحيح موقّع مكون من 8 بتات
int16 عدد صحيح موقّع مكون من 16 بت
int32 عدد صحيح موقّع مكون من 32 بت
int64 عدد صحيح موقّع 64 بت
uint8 عدد صحيح غير موقّع مكون من 8 بتات
uint16 عدد صحيح غير موقّع 1 6 بت
uint32 عدد صحيح غير موقّع 32 بت
uint64 عدد صحيح غير موقّع 64 بت
عدد صحيح كلا من البيانات غير الموقعة والموقعة لهما نفس الحجم، 32 أو 64 بت
وحدة كلا من البيانات غير الموقعة والموقعة لهما نفس الحجم، 32 أو 64 بت
الأحرف الرونية هذا مرادف لـ int32 ويمثل أيضًا نقاط رمز Unicode.
بايت هذا مرادف لـ uint8.
uintptr هذا هو نوع عدد صحيح غير موقّع. عرضه غير محدد، لكنه يمكن أن يحتوي على كافة بتات قيمة المؤشر.

على سبيل المثال:

// Chương trình Go sử dụng số nguyên
package main 
import "fmt"
		
func main() {
	
	// Dùng 8-bit unsigned int 
	var X uint8 = 225
	fmt.Println(X, X-3)
	
	// Dùng 16-bit signed int 
	var Y int16 = 32767
	fmt.Println(Y+2, Y-2) 
}

نتيجة:

225 222
-32767 32765

مثال على العمليات الحسابية:

// Các phép tính số học có thể có đối với số nguyên
// Tác giả : Chhanda Saha

package main

import "fmt"

func main() {

	var x int16 = 170
	var y int16 = 83
	//Cộng
	fmt.Printf(" addition : %d + %d = %d\n ", x, y, x+y)
	//Trừ
	fmt.Printf("subtraction : %d - %d = %d\n", x, y, x-y)
	//Nhân
	fmt.Printf(" multiplication : %d * %d = %d\n", x, y, x*y)
	//Chia
	fmt.Printf(" division : %d / %d = %d\n", x, y, x/y)
	//Mô đun
	fmt.Printf(" remainder : %d %% %d = %d\n", x, y, x%y)
}

نتيجة:

Cộng :  170 + 83 = 253
Trừ : 170 - 83 = 87
Nhân : 170 * 83 = 14110
Chia : 170 / 83 = 2
Số dư : 170 % 83 = 4 
  • الأرقام العائمة: في لغة Go، تنقسم الأرقام العائمة إلى نوعين كما هو موضح في الجدول أدناه.
    • يمكن أن تكون العمليات الحسابية: الجمع، الطرح، الضرب، القسمة.
    • هناك ثلاثة خطوط:
      • العدد العشري (3.15)
      • القوة (12e18 أو 3e10)
      • مختلط (13.16e12)
نوع البيانات

يصف

تعويم 32 رقم فاصل عائم IEEE 754 مكون من 32 بت
تعويم 64 رقم فاصل عائم 64 بت IEEE 754

على سبيل المثال:

//Minh họa chương trình Go dùng số dấu chấm động
package main 
import "fmt"
		
func main() {
	a := 20.45
	b := 34.89
	
	// Phép trừ hai số dấu chấm động
	c := b-a
	
	// Hiện kết quả
	fmt.Printf("Result is: %f", c)
	
	// Hiện kiểu biến C
	fmt.Printf("\nThe type of c is : %T", c) 
}

نتيجة:

Kết quả: 14.440000
Kiểu của C là : float64

مثال على العمليات الحسابية للأرقام العشرية:

// Các phép toán số học có thể có cho số thực
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var x float32 = 5.00
	var y float32 = 2.25
	//Phép cộng
	fmt.Printf("addition : %g + %g = %g\n ", x, y, x+y)
	//Phép trừ
	fmt.Printf("subtraction : %g - %g = %g\n", x, y, x-y)
	//Phép nhân
	fmt.Printf("multiplication : %g * %g = %g\n", x, y, x*y)
	//Phép chia
	fmt.Printf("division : %g / %g = %g\n", x, y, x/y)

}

نتيجة:

Phép cộng :  5 + 2.25 = 7.25
Phép trừ : 5 - 2.25 = 2.75
Phép nhân : 5 * 2.25 = 11.25
Phép chia : 5 / 2.25 = 2.2222223
  • الأعداد المركبة: تنقسم الأعداد المركبة إلى قسمين، كما هو موضح في الجدول أدناه. float32وهو float64أيضًا جزء من هذه الأعداد المركبة. تقوم دالة التكامل بتوليد عدد مركب من أجزائه التخيلية والحقيقية، ثم تقوم دالة التكامل باستخراج تلك الأجزاء.
    • هناك العديد من الوظائف المضمنة في الأعداد المركبة:
      • معقد – إنشاء رقم معقد من عددين عائمين.
      • real() – يحصل على الجزء الحقيقي من الرقم المركب المدخل كعدد عشري.
      • imag() – الحصول على الجزء التخيلي من الرقم المركب المدخل كعدد عشري
نوع البيانات

يصف

مجمع64 تحتوي الأعداد المركبة على float32 كمكونات حقيقية وتخيلية.
مجمع 128 تحتوي الأعداد المركبة على float64 كمكونات حقيقية وتخيلية.

على سبيل المثال:

// Chương trình Go dùng số phức
package main
import "fmt"

func main() {
	
var a complex128 = complex(6, 2)
var b complex64 = complex(9, 2)
fmt.Println(a)
fmt.Println(b)
	
// Hiện kiểu
fmt.Printf("The type of a is %T and "+
			"the type of b is %T", a, b)
}

نتيجة:

(6+2i)
(9+2i)
Kiểu của a là complex128, kiểu của b là complex64

أمثلة على الوظائف المضمنة:

// Các hàm tích hợp là số phức
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	comp1 := complex(10, 11)
	// cú pháp init số phức
	comp2 := 13 + 33i
	fmt.Println("Complex number 1 is :", comp1)
	fmt.Println("Complex number 1 is :", comp2)
	// lấy phần real
	realNum := real(comp1)
	fmt.Println("Real part of complex number 1:", realNum)
	// lấy phần hình ảnh
	imaginary := imag(comp2)
	fmt.Println("Imaginary part of complex number 2:", imaginary)

}

نتيجة:

Số phức 1 là: (10+11i)
Số phức 1 là: (13+33i)
Phần thực của số phức 1: 10
Phần ảo của số phức 2: 33

منطقي

يمثل نوع البيانات المنطقي بتًا واحدًا فقط من المعلومات التي تكون إما صحيحة أو خاطئة. لا يتم تحويل القيم من النوع البولياني ضمناً أو صراحةً إلى أي نوع آخر.

على سبيل المثال:

//Minh họa chương trình dùng boolean
package main
import "fmt"

func main() {
	
	// Các biến
str1 := "Quantrimang"
str2:= "quantrimang"
str3:= "Quantrimang"
result1:= str1 == str2
result2:= str1 == str3
	
// Hiện kết quả
fmt.Println( result1)
fmt.Println( result2)
	
// Hiện kiểu của result1 và result2
fmt.Printf("Kiểu của result1 là %T và "+
				"kiểu của result2 là %T",
							result1, result2)
	
}

نتيجة:

false
true
Kiểu của result1 là bool và kiểu của result2 là bool

سلسلة

يمثل نوع بيانات السلسلة تسلسلًا من نقاط رمز Unicode. بعبارة أخرى، يمكننا القول أن السلسلة هي عبارة عن تسلسل ثابت من البايتات، مما يعني أنه بمجرد إنشاء سلسلة، لا يمكنك تغييرها. يمكن أن تحتوي السلاسل على بيانات عشوائية، بما في ذلك البايتات ذات القيمة الصفرية في نموذج قابل للقراءة من قبل البشر. يمكن ربط السلاسل باستخدام عامل الجمع (+).

على سبيل المثال:

// Chương trình Go dùng chuỗi
package main
import "fmt"

func main() {
	
	// Biến str chứa chuỗi
str := "Quantrimang"
	
// Hiện độ dài của chuỗi
fmt.Printf("Length of the string is:%d",
								len(str))
	
// Hiện chuỗi
fmt.Printf("\nString is: %s", str)
	
// Hiện kiểu biến str 
fmt.Printf("\nType of str is: %T", str)
}

نتيجة:

Chiều dài của chuỗi là: 13
Chuỗi là: Quantrimang
Kiểu của chuỗi là: chuỗi

مثال على ربط السلسلة:

// Nối chuỗi
// Tác giả : Chhanda Saha
package main

import "fmt"

func main() {
	var str1 string = "STRING_"
	var str2 string = "Concatenation"

	// Nối chuỗi bằng toán tử + 
	fmt.Println("New string : ", str1+str2)

}

نتيجة:

New string :  STRING_Concatenation

اترك تعليقاً

How to Fix Microsoft Teams Password Error Forgot

How to Fix Microsoft Teams Password Error Forgot

Struggling with Microsoft Teams Password Error because you forgot your password? Follow our step-by-step guide on how to fix Microsoft Teams password error forgot issues quickly and securely. No tech skills needed!

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

لماذا يُعدّ مايكروسوفت تيمز بطيئًا جدًا؟ ١٠ نصائح لتسريعه في عام ٢٠٢٦

هل تشعر بالإحباط من بطء برنامج مايكروسوفت تيمز؟ اكتشف سبب بطء مايكروسوفت تيمز وطبّق هذه النصائح العشر المجربة لتسريعه بشكل كبير في عام 2026 من أجل تعاون سلس للغاية.

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

كيفية إصلاح خطأ عدم تحميل علامة تبويب ويكي في مايكروسوفت تيمز

هل تواجه مشكلة في تحميل علامة تبويب ويكي في مايكروسوفت تيمز؟ اكتشف حلولاً مجربة خطوة بخطوة لحل المشكلة بسرعة، واستعادة علامات تبويب ويكي، وتعزيز إنتاجية فريقك دون عناء.

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

كيفية إصلاح أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز

هل سئمت من أخطاء مزامنة إدارة المهام في مايكروسوفت تيمز التي تعيق سير عملك؟ اتبع حلولنا الخبيرة خطوة بخطوة لاستعادة مزامنة المهام بسلاسة بين تيمز، وبلانييه، وقائمة المهام. حلول سريعة لراحة فورية!

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

كيفية مسح ذاكرة التخزين المؤقت لبرنامج مايكروسوفت تيمز لإصلاح مشاكل الأداء

هل تواجه مشكلة في بطء تطبيق مايكروسوفت تيمز؟ تعرّف على كيفية مسح ذاكرة التخزين المؤقت لتطبيق مايكروسوفت تيمز خطوة بخطوة لحل مشاكل الأداء، والبطء، والتعطل، وتحسين السرعة على أنظمة ويندوز، وماك، والويب، والهواتف المحمولة. حلول سريعة وفعّالة!

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

كيفية إصلاح أخطاء تشغيل الوسائط في مايكروسوفت تيمز عام 2026

هل سئمت من مشاكل تشغيل الوسائط في مايكروسوفت تيمز التي تُفسد اجتماعاتك لعام 2026؟ اتبع دليلنا المُفصّل خطوة بخطوة لإصلاح مشاكل الصوت والفيديو والمشاركة بسرعة - دون الحاجة لأي مهارات تقنية. تعاون سلس بانتظارك!

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

كيفية إصلاح خطأ مايكروسوفت تيمز رقم 1200 على الهاتف (iOS/Android)

هل سئمت من خطأ مايكروسوفت تيمز رقم 1200 الذي يتسبب في انقطاع مكالماتك الهاتفية؟ اكتشف حلولاً سريعة وبسيطة لأنظمة iOS وAndroid للعودة إلى العمل الجماعي بسلاسة وسرعة - دون الحاجة إلى أي مهارات تقنية!

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

حل مشكلة إعدادات بروكسي مايكروسوفت تيمز

هل تواجه مشكلة في إعدادات بروكسي مايكروسوفت تيمز؟ اكتشف خطوات فعّالة لحل هذه المشكلة. امسح ذاكرة التخزين المؤقت، وعدّل إعدادات البروكسي، واستمتع بمكالمات سلسة في دقائق معدودة مع دليلنا المتخصص.

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح

تعلّم كيفية تسجيل الدخول إلى مركز إدارة مايكروسوفت تيمز بشكل صحيح من خلال دليلنا المفصل خطوة بخطوة. عالج الأخطاء الشائعة، واضمن الأمان، وقم بإدارة تيمز بسهولة تامة للمسؤولين في كل مكان.

أين تقويم فريقي؟ حل مشكلات المزامنة

أين تقويم فريقي؟ حل مشكلات المزامنة

هل تواجه مشكلة في مزامنة تقويم Teams الخاص بك؟ إليك دليلًا خطوة بخطوة لحل مشاكل المزامنة في Microsoft Teams. استعد عرض التقويم وقم بالمزامنة بسهولة تامة - نصائح الخبراء متوفرة هنا!