저는 Ruby를 처음 사용하여 <<
연산자에 대해 궁금합니다.Ruby에 대한 설명 << 연산자
a << 2
그러나1111 0000
입니다 15
을 줄 것이다, "이진 될 것 같지 않습니다 :이 연산자를 봤 때, 그것은이 예제 주어진 이진 왼쪽 Shift 운영자는 말한다 이 코드에서 왼쪽 시프트 연산자 "
class TextCompressor
attr_reader :unique, :index
def initialize(text)
@unique = []
@index = []
add_text(text)
end
def add_text(text)
words = text.split
words.each { |word| do add_word(word) }
end
def add_word(word)
i = unique_index_of(word) || add_unique_word(word)
@index << i
end
def unique_index_of(word)
@unique.index(word)
end
def add_unique_word
@unique << word
unique.size - 1
end
end
및 this question 내가 준 코드에 적용하지 않는 것 같습니다. 그래서 내가 가지고있는 코드로 루비 <<
은 어떻게 작동합니까?
"a"가 무엇인지에 따라 다른 일을합니다. '1 << 4 # => 16 '이 예상됩니다. (이 경우 "a"는 'Fixnum'이었습니다. 연산자는 위의 예에서'1 .__ send __ (: << 16)'과 같이 쓰여질 수있는 메서드라는 것을 기억하십시오; 이것은 연산자를 의미합니다. 최소'<<'는 첫 번째 인수에서 * 다형성 *입니다. –
당신은 그것을 할 수는 없지만 그것을 상징 할 수 있습니다 : http://symbolhound.com/?q=array+%3C%3C –
@AndrewGrimm you 커피 한잔 쏟아 부었어. 나는 이와 같은 도구를 _so_ 오래 찾고 있었다. – user2398029