Returns the result of shifting a value’s binary representation the specified number of digits to the left.
SDK
- Xcode 9.0+
Framework
- Swift Standard Library
Declaration
Parameters
lhs
The value to shift.
rhs
The number of bits to shift
lhs
to the left.
Discussion
The <<
operator performs a smart shift, which defines a result for a shift of any value.
Using a negative value for
rhs
performs a right shift usingabs(rhs)
.Using a value for
rhs
that is greater than or equal to the bit width oflhs
is an overshift, resulting in zero.Using any other value for
rhs
performs a left shift onlhs
by that amount.
The following example defines x
as an instance of UInt8
, an 8-bit, unsigned integer type. If you use 2
as the right-hand-side value in an operation on x
, the value is shifted left by two bits.
If you use 11
as rhs
, x
is overshifted such that all of its bits are set to zero.
Using a negative value as rhs
is the same as performing a right shift with abs(rhs)
.