본문 바로가기
Language/Perl

[Perl] Boolean

by VIR&US 2023. 7. 20.
반응형

목차


    Boolean

    논리학에서 참(true)과 거짓(false)을 나타내는 데 사용하는 개념


    Perl에서는?

    Perl에는 특별한 Boolean 타입은 없습니다.

    Perl 문서에서 어떤 함수가 "Boolean" 값을 반환한다고 나온 것을 종종 볼 수 있습니다.

    모든 스칼라 값들은 if를 써서 검사할 때 Truth or False 이 됩니다.

    • 실제로는 어떤 함수가 "참"을 반환하다라고 하는 값은 보통 1을 반환합니다.
    • "거짓"을 반환한다고 하는 값은 문자열로서 처리될 때는 빈 문자열 "' '처리되고, 수로 처리될 때는 0으로 처리됩니다.
    수 0, 문자열 '0'과 '', 빈 리스트 "()", 그리고 "undef"은 불리언 컨텍스트에서는 모두 거짓이다. 그 외의 모든 값들은 다 참이다. 참인 값에 "!" 또는 "not"을 붙여 부정하면 특별한 거짓 값을 반환하는데, 이 값은 문자열로서 처리될 때는 ''와 같이 처리되고, 수로 처리될 때는 0으로 처리된다.

    perlsyn 문서의 "Truth and Falsehood"

    False로 간주되는 값

    • undef
    • 숫자 0
    • 문자열 "" (빈문자열)
    • 문자열 "0" (0 한 개가 들어 있는 문자열)

    Example

    Code

    #!/bin/perl
    use strict;
    use warnings;
    
    my $S = "TTT";
    my $T = 54;
    my $F = "0";
    
    if ($S eq "TTT") {
        print "Ture\n"}
    else {
        print "False\n"}
    
    
    if ($T) {
        print "Ture\n"}
    else {
        print "False\n"}
    
    
    if ($F) {
        print "Ture\n"}
    else {
        print "False\n"}
    

    Result

    Ture
    Ture
    False
    
    728x90
    반응형

    'Language > Perl' 카테고리의 다른 글

    [Perl] die  (0) 2023.12.31
    [Perl] Scalar 변수 "연산자"  (0) 2023.11.19
    [Perl] Scalar(스칼라) 변수, 문자열 연결  (0) 2023.07.07
    [Perl] use strict, use warnings, print, \n  (0) 2023.07.07