1.数据类型
先看看Julia中的内建数据模块,这些数据模块通常被称为数据类型。Julia中的每个变量都属于一种特定的数据类型,比如整数、字符串、数组等。当然,有些数据类型(比如矩阵或向量)不像你期望的那么容易理解,有些数据类型还可以是其他数据类型的子类型(矩阵和向量都是数值的子类型)。
尽管不是强制性的,但定义变量的类型可以使Julia知道将变量值转换为何种类型。当编写复杂的程序时,这一点非常重要,因为这时程序歧义经常会导致错误和不能预料的结果。如果没有定义变量类型,Julia会自动指定一个符合变量值的最简单的类型(如果没有变量值,Julia会将变量类型指定为通用类型“any”)。下面我们通过几个示例来说明数据类型。
image.png
image.png
因为BigInt和BigFloat属于特殊数据类型,所以它们不能通过两个冒号的方法(::)来定义,必须分别使用BigInt()和BigFloat()构造函数来定义这两种变量。
BigInt和BigFloat类型对于其中的数值大小没有限制,所以非常适合于处理任意大小的数值。但是,它们非常占用内存,所以不要随意地使用这两种数据类型。如果确实需要使用它们,请一定按部就班地对变量进行初始化。例如:
image.png
2.数组
数组是Julia中的基础数据类型,它使你可以处理任意类型数据的集合,也可以处理不同类型数据组成的集合。和其他语言(比如R和Python)一样数组的索引位于方括号内,方括号也可以用来将一组变量定义为数组。
和其他语言一样,数组是一种可变的数据结构,这使得它与那些不可变的数据类型(比如元组或某种字典类型)相比,运算速度较慢。
image.png image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png image.png
image.png
image.png
image.png
image.png
网友评论