프로그래밍/Ruby

Ruby 프로그래밍 - 3. 비교

seungdols 2015. 2. 19. 13:55

비교 연산


보통 비교라 함은 숫자의 비교 혹은 문자열의 비교이다.

프로그래밍에서 비교는 다른지, 같은지, 큰지, 작은지를 판단하는 중요한 문법이다.


== 연산




- 비교 연산자


irb(main):008:0> puts 1==2
false
=> nil
irb(main):009:0> puts 1==1
true
=> nil
irb(main):010:0> puts "string" == "one"
false
=> nil
irb(main):011:0> puts "one" == "one"
true
=> nil

!= 연산


'!'는 부정을 의미한다. '같다'의 부정은 '같지 않다'이다. 이것을 '!='으로 표시한다. == 과 정반대의 결과를 나타낸다.



irb(main):012:0> puts 1 != 2
true
=> nil
irb(main):013:0> puts 2 != 2
false
=> nil
irb(main):014:0> puts "one" != "two"
true
=> nil

> 연산


좌항이 우항보다 크다면 True, 그렇지 않으면 False이다. 물론 '<'도 가능하다.


irb(main):015:0> puts 10 > 20
false
=> nil
irb(main):016:0> puts 20 > 30
false
=> nil

>= 연산


좌항이 우항보다 크거나 같다. '<='도 가능하다.



irb(main):017:0> puts 30>= 10
true
=> nil
irb(main):018:0> puts 20 >= 20
true
=> nil
irb(main):019:0> puts 20 >= 30
false
=> nil

<=> 복합 연산자


- 좌항이 우항보다 크면 1

- 좌항이 우항보다 작다면 -1

- 좌항과 우항이 같다면 0


irb(main):020:0> puts 10<=>20
-1
=> nil
irb(main):021:0> puts 20<=>20
0
=> nil
irb(main):022:0> puts 30<=>10
1
=> nil

=~ 연산자 


- Match 연산자로 특정문자열이 정규표현식과 매치가 되는지 검사 하는 연산자이다.

- 일치하는 패턴의 위치를 반환하고 아니면 nil을 반환한다.


irb(main):026:0> s = "seungdols company"
=> "seungdols company"
irb(main):027:0> puts s =~ /company/
10
=> nil
irb(main):028:0> puts s =~ /seung/
0
=> nil
irb(main):029:0> puts s =~ /ho/
=> nil


반응형