solidity智能合约[6]-基本类型与bool运算

变量

存储数据的抽象单位,代表内存中的一段空间。

类型

同其他的编程语言一样,solidity中也有许多基本的类型。类型决定了存储空间的大小和解析的方式。
下面列举出了solidity中基本的类型int、uint、byte、string、bool

基本类型

bool类型

这一小节中介绍基本的bool类型,bool类型只能够存储true或者false。

bool运算与运算符

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
pragma solidity ^0.4.23;

contract BooleanTest{

bool _a;
int num1 = 100;
int num2 = 200;

//1、不赋初值的变量和默认返回false
function getBool() public view returns(bool){

return _a;
}


//2、 返回true。 !运算符 将true变为false,false变为true
function getBool2() public view returns(bool){

return !_a;
}
//3、==运算符,判断变量是否相同,相等为true,不等为false
function equal() public view returns(bool){
return num1==num2;
}
//4、!=运算符,判断变量是否不同,相等为fasle,不等为true
function equal2() public view returns(bool){
return num1!=num2;
}

//5、&& || 与或非的逻辑
function yu() public view returns(bool){
return (num1==num2) && true;
}


function yu2() public view returns(bool){
return (num1!=num2) && true;
}

function huo() public view returns(bool){
return (num1==num2) || true;
}


function huo2() public view returns(bool){
return (num1==num2) || false;
}
}

&& || 与或非的逻辑

1
2
3
4
5
6
7
true && false    false
false && true false
true && true true

true || false true
false || true true
false || false false
与或非