Razor变量
# Razor - 变量
变量是用于存储数据的命名实体。
## 变量
变量用于存储数据。
变量名必须以字母字符开头,不能包含空格和保留字符。
变量可以是某个具体的类型,指示其所存储的数据类型。字符串变量存储字符串值 ("Welcome to W3School"),整数变量存储数值 (103),日期变量存储日期值,等等。
使用 var 关键词或类型对变量进行声明,不过 ASP.NET 通常能够自动确定数据的类型。
```cs
// 使用 var 关键词:
var greeting = "Welcome to W3School";
var counter = 103;
var today = DateTime.Today;
// 使用 data 类型:
string greeting = "Welcome to W3School";
int counter = 103;
DateTime today = DateTime.Today;
```
## 数据类型
下面是常用数据类型的列表:
|类型|描述|实例|
|-|-|-|
|int|整数|103, 12, 5168|
|float|浮点数|3.14, 3.4e38|
|decimal|小数|1037.196543|
|bool|逻辑值|true, false|
|string|字符串值|"Hello W3School", "Bill"|
## 运算符
运算符告诉 ASP.NET 在表达式中执行哪种类型的命令。
C# 语言支持多种运算符。下面是常见的运算符:
<table><tr><th>运算符</th><th>描述</th><th>实例</th></tr><tr><td>=</td><td>为变量赋值。</td><td>i=6</td></tr><tr><td>+<br />-<br />*<br />/<br /></td><td>加上值或变量<br />减去值或变量<br />乘值或变量<br />除值或变量<br /></td><td>i=5+5<br />i=5-5<br />i=5*5<br />i=5/5<br /></td></tr><tr><td>+=<br />-=<br /></td><td>递增变量<br />递减变量<br /></td><td>i += 1<br />i -= 1<br /></td></tr><tr><td>==</td><td>相等。如果值相等,则返回 true。</td><td>if (i==10)</td></tr><tr><td>!=</td><td>不相等。如果值不相等,则返回 true。</td><td>if (i!=10)</td></tr><tr><td><<br />><br /><=<br />>=<br /></td><td>小于<br />大于<br />小于等于<br />大于等于<br /></td><td>if (i<10)<br />if (i>10)<br />if (i<=10)<br />if (i>=10)<br /></td></tr><tr><td>+</td><td>字符串相加(级联或并置)</td><td>"w3" + "school"</td></tr><tr><td>.</td><td>点。分隔对象与方法。</td><td>DateTime.Hour</td></tr><tr><td>()</td><td>括号。对值进行分组。</td><td>(i+5)</td></tr><tr><td>()</td><td>括号。传递参数。</td><td>x=Add(i,5)</td></tr><tr><td>[]</td><td>括号。访问数组或集合中的值。</td><td>name[3]</td></tr><tr><td>!</td><td>非。反转 true 或 false。</td><td>if (!ready)</td></tr><tr><td>&&<br />||<br /></td><td>逻辑与<br />逻辑或<br /></td><td>if (ready && clear)<br />if (ready || clear)<br /></td></tr></table>
## 转换数据类型
将一种数据类型转换为另一种有时很有用。
大多数常见的例子是将字符串输入转换为另一种类型,比如整数或日期。
作为一项规则,用户输入会成为字符串,即使用户输入的是数字。所以,数字输入值在用于计算之前必须被转换为数字。
下面是常用的转换方法列表:
<table><tr><th>方法</th><th>描述</th><th>实例</th></tr><tr><td>AsInt()<br />IsInt()<br /></td><td>把字符串转换为整数。</td><td>if (myString.IsInt())<br />{myInt=myString.AsInt();}</td></tr><tr><td>AsFloat()<br />IsFloat()<br /></td><td>把字符串转换为浮点数。</td><td>if (myString.IsFloat())<br />{myFloat=myString.AsFloat();}</td></tr><tr><td>AsDecimal()<br />IsDecimal()<br /></td><td>把字符串转换为十进制数。</td><td>if (myString.IsDecimal())<br />{myDec=myString.AsDecimal();}</td></tr><tr><td>AsDateTime()<br />IsDateTime()<br /></td><td>把字符串转换为 ASP.NET DateTime 类型</td><td>myString="10/10/2012";<br />myDate=myString.AsDateTime();</td></tr><tr><td>AsBool()<br />IsBool()<br /></td><td>把字符串转换为逻辑值。</td><td>myString="True";<br />myBool=myString.AsBool();</td></tr><tr><td>ToString()</td><td>把任意数据类型转换为字符串。</td><td>myInt=1234;<br />myString=myInt.ToString();</td></tr></table>