TTS Swift Notes: Strings & Characters Flashcards

1
Q

What is a string literal?

A

A fixed sequence of textual character surrounded by a pair of double quotes (“”).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

When do you use a string literal?

A

As an initial value for a constant or variable.

  • let someString = “Some string literal value”
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

How do you create an empty String?

A

Either assign an empty string literal to a variable or initialize a new String instance with initializer syntax.

  • var emptyString = “” // empty string literal
  • var anotherEmptyString = String() // initializer syntax
  • // these two strings are both empty, and are equivalent to each other
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What method checks a String’s Boolean to find out if it is empty?

A

.isEmpty

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

How do you indicate whether a particular String can be modified (or mutated)?

A

Assign it to a variable (in which case it can be modified) or to a constant (in which case it cannot be modified).

  • var variableString = “Horse”
  • variableString += “ and carriage”
  • // variableString is now “Horse and carriage”
  • let constantString = “Highlander”
  • constantString += “ and another Highlander”

// this reports a compile-time error - a constant string cannot be modified

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

How do you access the individual character values for a string?

A

By iterating over its characters property with a for-in loop

  1. for character in “Dog!🐶”.characters {
  2. print(character)
  3. }
  4. // D
  5. // o
  6. // g
  7. // !
  8. // 🐶
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

You can add to a string value with what two operators?

A
  1. Addition operator (+)

2. Assignment operator (+=)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What method can add a value to a string variable?

A

.append

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

String interpolation is a way to do what?

A

To construct a new String value from a mix of constants, variables, literals, and expressions by including their values inside a string literal.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is unicode?

A

An international standard for encoding, representing, and processing text in different writing systems.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What does unicode allow you to do?

A

To represent almost any character from any language in a standardized form, and to read and write those characters to and from an external source such as a text file or web page.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is a unicode scalar?

A

A unique 21-bit number for a character or modifier, such as U+0061 for LATIN SMALL LETTER A(“a”).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What is the Unicode scalar range?

A

U+0000 to U+D7FF inclusive OR U+E000 to U+10FFFF inclusive.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is an extended grapheme cluster?

A

A sequence of one or more Unicode scalars that (when combined) produce a single human-readable character. They area a flexible way to represent many complex script characters as a single Character value. EX: é

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What method/property retrieves the count of the Character values in a string?

A

.count

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Calling String.Index() does what?

A

Corresponds to the position of each Character in the string.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Can Swift string be indexed by integer values?

18
Q

What property should you use to access the first position Character of a String?

A

startIndex

19
Q

The endIndex property is what position of a String?

A

After the String’s last character.

20
Q

If a String is empty, startIndex and endIndex are what?

21
Q

Any index in a String can be accessed from any other index by chaining the predecessor(), successor() or this method.

A

advancedBy(_:)

22
Q

What method allows a String.Index value to access its immediately preceding index?

A

predecessor()

23
Q

What method allows a String.Index value to access its immediately succeeding index?

A

successor()

24
Q

What method inserts a character into a string at a specified index?

A

insert(_:atIndex:)

25
What method inserts the contents of another string at a specified index?
insertContentsOf(_:at:)
26
What method removes a character from a string at a specified index?
removeAtIndex(_:)
27
What method removes a substring at a specified range?
removeRange(_:)
28
What are the three ways that Swift provides to compare textual values?
1. string and character equality 2. prefix equality 3. suffix equality
29
What two operators check string and character equality?
The equal to operator (==) | The not equal to operator (!=)
30
In Swift, are string and character comparisons locale-sensitive?
No.
31
What method checks if a string has a particular string prefix?
hasPrefix(_:)
32
What method checks if a string has a particular string suffix?
hasSuffix(_:)
33
hasPrefix(_:) and hasSuffix(_:) return what kind of value?
Boolean
34
Encoding forms encode strings into small chunks called what?
Code units
35
UTF-8 encoding form has how many code units?
8-bit code units.
36
You can access a UTF-8 representation of a String by iterating over its what?
utf8 property
37
The utf8 property is of what type?
String.UTF8View
38
How do you access a Unicode scalar representation of a String value?
By iterating over its unicodeScalars property.
39
The unicodeScalars property is of what type?
UnicodeScalarView
40
UnicodeScalarView is a collection of what value type?
UnicodeScalar
41
Each UnicodeScalar value can be used to do what?
Construct a new String value.