Szukaj…


Wprowadzenie

Specyfikatory formatu są używane w Objective-c do wszczepiania wartości obiektów do łańcucha.

Składnia

  • %@ //Strunowy
  • % d // 32-bitowa liczba całkowita ze znakiem
  • % D // 32-bitowa liczba całkowita ze znakiem
  • % u // 32-bitowa liczba całkowita bez znaku
  • % U // Niepodpisana 32-bitowa liczba całkowita
  • % x // Niepodpisana 32-bitowa liczba całkowita w formacie szesnastkowym pisanym małymi literami
  • % X // Niepodpisana 32-bitowa liczba całkowita w formacie DUŻEJ liczby szesnastkowej
  • % o // Niepodpisana 32-bitowa liczba całkowita w formacie ósemkowym
  • % O // 32-bitowa liczba całkowita bez znaku w formacie ósemkowym
  • % f // 64-bitowa liczba zmiennoprzecinkowa
  • % F // 64-bitowa liczba zmiennoprzecinkowa drukowana w notacji dziesiętnej
  • % e // 64-bitowa liczba zmiennoprzecinkowa w formacie małej litery zapisu naukowego
  • % E // 64-bitowa liczba zmiennoprzecinkowa w NAZWISKOWYM formacie notacji naukowej
  • % g // przypadek specjalny% e, który używa% f, gdy dostępnych jest mniej niż 4 figi, w przeciwnym razie% e
  • % G // przypadek specjalny% E, który używa% f, gdy dostępnych jest mniej niż 4 figi, w przeciwnym razie% E
  • % c // 8-bitowy znak bez znaku
  • % C // 16-bitowa jednostka kodu UTF-16
  • % s // ciąg UTF8
  • % S // 16-bitowy wariant% s
  • % p // Wskaźnik pustki w formacie szesnastkowym z małymi literami z wiodącym „0x”
  • % zx // special case% p, który usuwa wiodące „0x” (do użycia z rzutowaniem bez typu)
  • % a // 64-bitowa liczba zmiennoprzecinkowa w notacji naukowej z wiodącym „0x” i jedną cyfrą szesnastkową przed przecinkiem za pomocą „p” do zanotowania wykładnika wykładniczego.
  • % A // 64-bitowa liczba zmiennoprzecinkowa w notacji naukowej z wiodącym „0x” i jedną cyfrą szesnastkową przed przecinkiem za pomocą „P” do zanotowania wykładnika wykładniczego.

Uwagi

Ze względu na charakter specyfikatorów formatu, jeśli chcesz dołączyć symbol procentowy (%) do swojego ciągu, musisz uciec przed nim, używając drugiego symbolu procentowego.

Przykład:

int progress = 45;//percent
NSString *progressString = [NSString stringWithFormat:@"Progress: %i%%", (int)progress];

NSLog(progressString);//logs "Progress: 45%"

Nie istnieje specyfikator formatu dla typu BOOL.

Typowe rozwiązania obejmują:

BOOL myBool = YES;
NSString *boolState = [NSString stringWithFormat:@"BOOL state: %@", myBool?@"true":@"false"];

NSLog(boolState);//logs "true"

Który wykorzystuje operator trójskładnikowy do rzutowania ekwiwalentu łańcucha.

BOOL myBool = YES;
NSString *boolState = [NSString stringWithFormat:@"BOOL state: %i", myBool];

NSLog(boolState);//logs "1" (binary)

Który wykorzystuje rzutowanie (int) do wszczepienia binarnego odpowiednika.

Przykład liczby całkowitej -% i

int highScore = 57;
NSString *scoreBoard = [NSString stringWithFormat:@"HighScore: %i", (int)highScore];

NSLog(scoreBoard);//logs "HighScore: 57"


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow