注意:以下翻译的准确性尚未经过验证。这是使用 AIP ↗ 从原始英文文本进行的机器翻译。

从数组创建映射

支持于: 批处理, 流处理

返回一个使用从压缩数组得到的键值对的映射。空值不允许作为键并会导致运行时出错。

表达式类别: 数组, 映射

声明的参数

  • 键数组 - 用作输出映射的键的数组。
    Expression<Array<K>>
  • 值数组 - 用作输出映射的值的数组。
    Expression<Array<V>>

类型变量范围: K 接受 AnyType**V 接受 AnyType

输出类型: Map<K, V>

示例

示例 1: 基本情况

参数值:

  • 键数组: [ 1, 2, 3 ]
  • 值数组: [ 4, 5, 6 ]

输出: {
 1 -> 4,
 2 -> 5,
 3 -> 6,
}


示例 2: 基本情况

描述: 左侧数组中的重复项将被移除,保留最后一个看到的键值对。 参数值:

  • 键数组: [ 1, 1, 2, 3 ]
  • 值数组: [ 4, 5, 6, 7 ]

输出: {
 1 -> 5,
 2 -> 6,
 3 -> 7,
}


示例 3: 空情况

描述: 如果值多于键,则输出为空 参数值:

  • 键数组: [ 1, 2 ]
  • 值数组: [ 5, 6, 7, 9 ]

输出: null


示例 4: 空情况

描述: 如果键多于值,则输出为空 参数值:

  • 键数组: [ 1, 2, 3, 4 ]
  • 值数组: [ 5, 6, 7 ]

输出: null


示例 5: 空情况

参数值:

  • 键数组: first_array
  • 值数组: second_array
first_arraysecond_array输出
[ 1, 2, 3 ]nullnull
null[ 1, 2, 3 ]null
nullnullnull

示例 6: 空情况

描述: 当任何键为空时应返回空 参数值:

  • 键数组: [ null, 2, 3 ]
  • 值数组: [ 4, 5, 6 ]

输出: null


示例 7: 空情况

描述: 应允许空作为值 参数值:

  • 键数组: [ 1, 2, 3 ]
  • 值数组: [ 4, null, 6 ]

输出: {
 1 -> 4,
 2 -> null,
 3 -> 6,
}


示例 8: 边缘情况

描述: 允许数组作为键 参数值:

  • 键数组: [ [ 1, 2 ], [ 3, 4 ] ]
  • 值数组: [ 5, 6 ]

输出: {
 [ 1, 2 ] -> 5,
 [ 3, 4 ] -> 6,
}


示例 9: 边缘情况

描述: 允许数组作为值 参数值:

  • 键数组: [ 1, 2 ]
  • 值数组: [ [ 3, 4 ], [ 5, 6 ] ]

输出: {
 1 -> [ 3, 4 ],
 2 -> [ 5, 6 ],
}