# Cast > Supported in: Batch, Faster, Streaming Cast expression to given type. **Expression categories:** Cast, Popular ## Declared arguments * **Expression:** Expression to cast.
*Expression\* * **Type:** Type to cast to.
*Type\* **Type variable bounds:** *C accepts AnyType* **Output type:** *C* ## Examples ### Example 1: Base case **Argument values:** * **Expression:** `a` * **Type:** Array\ | a | **Output** | | ----- | ----- | | \[ 12.3, 20.1 ] | \[ 12.3, 20.1 ] | *** ### Example 2: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | \[ {
 **date**: 2020-01-01,
 **foo**: false,
 **time**: 2020-10-01T00:00:01Z,
} ] | \[{false, 2020-10-01 00:00:01, 2020-01-01}] | *** ### Example 3: Base case **Argument values:** * **Expression:** `a` * **Type:** Array\ | a | **Output** | | ----- | ----- | | \[ 12.3, 20.1 ] | \[ 12.3, 20.1 ] | *** ### Example 4: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | \[ true, false ] | \[true, false] | *** ### Example 5: Base case **Description:** Casting string to long **Argument values:** * **Expression:** 1234 * **Type:** Long **Output:** 1234 *** ### Example 6: Base case **Description:** Casting long to string **Argument values:** * **Expression:** 1234 * **Type:** String **Output:** 1234 *** ### Example 7: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | true | true | | false | false | | *null* | *null* | *** ### Example 8: Base case **Argument values:** * **Expression:** `a` * **Type:** Date | a | **Output** | | ----- | ----- | | 2020-01-01 | 2020-01-01 | | *null* | *null* | *** ### Example 9: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 1 -> true,
 2 -> false,
} | {1 -> true, 2 -> false} | *** ### Example 10: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | \[ \[ true, false ], \[ true ] ] | \[\[true, false], \[true]] | *** ### Example 11: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 foo -> {
 1 -> true,
 2 -> false,
},
} | {foo -> {1 -> true, 2 -> false}} | *** ### Example 12: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 **a**: {
 **bar**: false,
 **foo**: 1,
},
} | {{1, false}} | *** ### Example 13: Base case **Argument values:** * **Expression:** `a` * **Type:** Boolean | a | **Output** | | ----- | ----- | | true | true | | true | true | | tRuE | true | | t | true | | y | true | | yes | true | | 1 | true | | false | false | | f | false | | n | false | | no | false | | 0 | false | | foo | *null* | *** ### Example 14: Base case **Description:** Casting string to decimal **Argument values:** * **Expression:** 1234 * **Type:** Decimal(4, 0) **Output:** 1234 *** ### Example 15: Base case **Argument values:** * **Expression:** `a` * **Type:** Integer | a | **Output** | | ----- | ----- | | 1 | 1 | | 1.0 | *null* | | *null* | *null* | *** ### Example 16: Base case **Argument values:** * **Expression:** `a` * **Type:** Long | a | **Output** | | ----- | ----- | | 1 | 1 | | 1.0 | *null* | | *null* | *null* | *** ### Example 17: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 **bar**: *null*,
 **foo**: 1,
} | {1, null} | *** ### Example 18: Base case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 **bar**: false,
 **foo**: 1,
} | {1, false} | *** ### Example 19: Null case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | \[ true, *null* ] | \[true, null] | | *null* | *null* | *** ### Example 20: Null case **Argument values:** * **Expression:** `a` * **Type:** String | a | **Output** | | ----- | ----- | | {
 1 -> *null*,
 2 -> false,
} | {1 -> null, 2 -> false} | *** ### Example 21: Null case **Argument values:** * **Expression:** `a` * **Type:** Date | a | **Output** | | ----- | ----- | | *null* | *null* | ***