Swift中的算术数据类型是什么?
我最近读到Swift中的算术数据类型是什么?,swift,swift3,Swift,Swift3,我最近读到枚举和元组具有数学结构,它们分别被称为总和和乘积类型,类似于算术 我可以理解枚举是sum类型,但不能将tuple理解为产品类型 enum Add<T, U> { case left(T) case right(U) } 枚举添加{ 案例左(T) 案例权利(U) } 因此,如果U有三个成员,而T有五个成员,那么Add将有8个成员,但我无法给出产品类型的示例 而且 枚举是否也可以作为产品类型 算术数据类型如何有用 Enum表示任意一种情况-该值可
枚举
和元组
具有数学结构,它们分别被称为总和和乘积类型,类似于算术
我可以理解枚举是sum
类型,但不能将tuple理解为产品类型
enum Add<T, U> {
case left(T)
case right(U)
}
枚举添加{
案例左(T)
案例权利(U)
}
因此,如果U
有三个成员,而T
有五个成员,那么Add
将有8个成员,但我无法给出产品类型的示例
而且
Enum表示任意一种情况-该值可以是其中一种情况。它就像一个被称为逻辑和的替代方案。我不认为它们是产品类型
元组表示获取所有值时的情况—它是集合的一个元素,集合是元组包含的每个元素的域的carthesian乘积。这就是为什么你可以把它们看作是一种产品类型。因此,给定您为枚举情况所做的假设,一个元组(如“(T,U)”将有15个可能的变体,因为每个T都可以与每个U-3*5=15组合,枚举表示任何一种情况-该值可以是其中一种情况。它就像一个被称为逻辑和的替代方案。我不认为它们是产品类型 元组表示获取所有值时的情况—它是集合的一个元素,集合是元组包含的每个元素的域的carthesian乘积。这就是为什么你可以把它们看作是一种产品类型。因此,考虑到您对枚举情况所做的假设,类似于“T,U”的元组将有15种可能的变体,因为每个T都可以与swift 3.0中的每个U-3*5=15组合起来
enum names
{
case Swift
case Closures
}
var lang = names.Closures // Call .Closures case
lang = .Closures
switch lang
{
case .Swift:
print("Welcome to Swift")
case .Closures: //call this case
print("Welcome to Closures")
default:
print("Introduction")
}
输出:欢迎使用闭包
示例2:
enum Climate
{
case India
case America
case Africa
case Australia
}
var season = Climate.America // call .America case
season = .America
switch season
{
case .India:
print("Climate is Hot")
case .America:
print("Climate is Cold") // call this case
case .Africa:
print("Climate is Moderate")
case .Australia:
print("Climate is Rainy")
default:
print("Climate is not predictable")
}
输出:气候寒冷swift 3.0中“枚举”的简单示例
enum names
{
case Swift
case Closures
}
var lang = names.Closures // Call .Closures case
lang = .Closures
switch lang
{
case .Swift:
print("Welcome to Swift")
case .Closures: //call this case
print("Welcome to Closures")
default:
print("Introduction")
}
输出:欢迎使用闭包
示例2:
enum Climate
{
case India
case America
case Africa
case Australia
}
var season = Climate.America // call .America case
season = .America
switch season
{
case .India:
print("Climate is Hot")
case .America:
print("Climate is Cold") // call this case
case .Africa:
print("Climate is Moderate")
case .Australia:
print("Climate is Rainy")
default:
print("Climate is not predictable")
}
输出:气候寒冷我还没有做出假设<代码>枚举可以是产品类型。所以这里的问题仍然是,
什么是算术数据类型?
以及它如何有用。我还没有做出假设<代码>枚举可以是产品类型。所以这里的问题仍然是,什么是算术数据类型?
以及它如何有用。这甚至不能回答这个问题。这只是一个如何使用枚举的示例。这甚至不能回答这个问题。这只是一个如何使用枚举的示例。