1、变量的定义方式:
定义但是没有赋值,定义并且赋值,同类型变量可以批量定义,分为全部赋值,部分赋值,全都不赋值。
2、等号右边的结果赋值给左边,所以左边只能是变量,不能是数值。
等号左边的类型为重要类型,意味着等号右边的结果类型要和左边一致
3、变量的类型与数值的类型
4、为什么数值的类型不是string int float char
string : String int:Int32 float:Single char:Char
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
//定义但不赋值
//int num1;
//但是可以在后续赋值后使用
//num1 = 2;
//Console.WriteLine(num1);
//批量定义
///int num3 = 4, num4 = 5, num5 = 6, num6 = 7;
//Console.WriteLine(num6);
string str = "abc";
String str2 = "abc";
float f1 = 2.5f;
Single f2 = 3.4f;
Double f3 = 3.6f;
char char1 = 'a';
Char char2 = 'b';
int num1 = 1 + 2;
Console.WriteLine(num1);
Console.ReadKey();
}
}
}
变量类型转换
转换方式:1、隐式类型转换:无需人为干涉的自动转换,类型必须要兼容,只能把精度小的转成精度大的。
2、显示转换类型:人为干涉的强制转换,类型依然要兼容,可以把精度大的转换为精度小的,但是会丢失多出来的精度。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
#region 变量类型
//定义但不赋值
//int num1;
//但是可以在后续赋值后使用
//num1 = 2;
//Console.WriteLine(num1);
//批量定义
///int num3 = 4, num4 = 5, num5 = 6, num6 = 7;
//Console.WriteLine(num6);
//string str = "abc";
//String str2 = "abc";
//float f1 = 2.5f;
//Single f2 = 3.4f;
//Double f3 = 3.6f;
//char char1 = 'a';
//Char char2 = 'b';
//int num1 = 1 + 2;
//Console.WriteLine(num1);
#endregion
#region 隐式转换
//float 比 int 精度更高
//int num1 = 1;
//float float1 = 2.0f;
//float 不可以转换为Int类型
//int类型可以转换为float类型
//float float2 = num1;
//char无法转换为string
//char char1 = 'A';
//因为char代表键位数字,可以转换为float和int
//string str1 = char1;
//Console.ReadKey();
#endregion
#region 显式转换
int num1 = 12;
float float1 = 12.5f;
//加上(类型)来强行转换类型,但是会丢失精度
int num2 = (int)float1;
string str1 = "123";
#endregion
}
}
}