SqueakByExample:8.3

From 흡혈양파의 번역工房
Revision as of 10:42, 16 August 2012 by Onionmixer (talk | contribs) (SBE 문자 페이지 추가)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

문자(Characters)

문자는 메그니튜드(Magnitude)의 서브클래스로서 Collections-String에서 정의됩니다. $<char>처럼 스퀵에서 인쇄 가능한 문자들이 표현됩니다. 예를 들면 이렇게 말이죠:

$a < $b        true


비 인쇄 문자(Non-printing characters)는 다양한 클래스 메소드들을 사용하여 발생됩니다. Character class»value:는 Unicode (또는 ASCII) 정수 값을 인수로서 취하고 대응하는 character를 리턴합니다. accessing untyPeable character 프로토콜은 backspace, cr, escape, euro, space, tab 등과 같은 여러 개의 편리한 constructor 메소드를 포함하고 있습니다.

Character space = (Character value: Character space asciiValue)        true


printOn: 메소드는 가장 적합한 표현을 제공하는 문자들을(characters) 발생시키는 3 가지 방법을 알만큼 충분히 영리합니다:

Character value: 1             Character value: 1
Character value: 32           Character space
Character value: 97           $a


다양하고 편리한 testing 메소드들은 isAlphaNumeric, isCharacter, isDigit, isLowercase, isVowel에 내장된(built in) 메소드들입니다.

문자를, 바로 그 문자를 포함한 문자열(string)으로 변환하시려면 asString을 발송합니다. 이번 사례에서, asString과 pringString은 다른 결과를 내놓았습니다:

$a asString          'a'
$a                        $a
$a printString       '$a'


모든 ascii 문자는 클래스 변수 CharacterTable에 저장된 고유한 인스턴스(unique instance)입니다:

(Character value: 97) == $a        true


0에서 255 범위 밖의 문자들은 고유하지(unique)않습니다, 그럼에도 불구하고:

Character characterTable size                                       256    
(Character value: 500) == (Character value: 500)        false

Notes