Julia 数据类型学习笔记

Julia 是一种高性能、动态的编程语言,其特点在于其数据类型的灵活多样性。Julia 支持多种不同的数据类型,包括基本数据类型、复合数据类型和抽象数据类型。

基本数据类型

整数

在 Julia 中,整数类型包括 Int8、Int16、Int32、Int64 和 Int128。这些整数类型分别表示有符号的 8 位、16 位、32 位、64 位和 128 位整数。此外,还有无符号版本 UInt8、UInt16、UInt32、UInt64 和 UInt128。以下是一些示例:

juliaCopy Code
x = 10 # Int64 y = Int8(100) # Int8 z = UInt32(1000) # UInt32

浮点数

Julia 支持单精度浮点数 Float32 和双精度浮点数 Float64。以下是一些示例:

juliaCopy Code
x = 1.0 # Float64 y = 1.5f0 # Float32

复数

Julia 中的复数类型由实部和虚部组成,可以用 Complex 类型表示。以下是一些示例:

juliaCopy Code
x = 1 + 2im # Complex{Int64} y = 1.0 + 2.0im # Complex{Float64}

字符串

在 Julia 中,字符串由双引号或三个双引号包围。以下是一些示例:

juliaCopy Code
x = "hello" # String y = """line1 line2""" # String

复合数据类型

数组

Julia 中的数组可以包含任何类型的元素,还支持多维数组。以下是一些示例:

juliaCopy Code
x = [1, 2, 3] # 1 维数组 y = [1 2; 3 4] # 2 维数组 z = zeros(3, 4) # 3 行 4 列的全零矩阵

元组

元组是一种有序的不可变数据类型,可以包含不同类型的元素。以下是一些示例:

juliaCopy Code
x = (1, "hello", 3.14) # 元组 y = ("hello",) # 只有一个元素的元组需要在后面加上逗号

字典

Julia 中的字典是一种无序的键值对数据类型,键和值可以是任何类型。以下是一些示例:

juliaCopy Code
x = Dict("a" => 1, "b" => 2) # 字典 y = x["a"] # 访问字典元素

抽象数据类型

Julia 中的抽象数据类型是一种表示特定概念或对象的自定义数据类型。以下是一些示例:

juliaCopy Code
abstract type Animal end # 定义抽象类型 struct Dog <: Animal # 定义 Dog 类型,继承自 Animal name::String end struct Cat <: Animal # 定义 Cat 类型,继承自 Animal name::String end

以上是关于 Julia 数据类型的简要介绍及示例。请注意,在实际编程中,可以在任何数据类型上定义任意操作,这使得 Julia 成为一种非常灵活和有用的编程语言。