变量类型转换
表达式类型转换(主要指等式右边)
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)
{
//等式右边必须先全部转为左边的类型才可以计算
//因为int 类型可以转化为float类型,所以先转换为float类型再进行计算
//float float1 = 2 + 1.5f;
//不成立的地方先显式转换
//int num1 = 2 + (int)(1.5f-0);
}
}
}
不兼容类型的转换----Convert
本身对放进去的变量类型没什么限制,但是如果完全不具备转换的可能性,会报错
转换为Init: Convert.ToInt32
转换为float: Convert.ToSingle
转换为string: Convert.ToString
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 类型可以转化为float类型,所以先转换为float类型再进行计算
//float float1 = 2 + 1.5f;
//不成立的地方先显式转换
//int num1 = 2 + (int)(1.5f-0);
//更强行的转换,但是完全无法转换的时候会报错,风险更高
string str1 = "123";
int num1 = Convert.ToInt32(str1);
string str2 = "123.34";
float float1 = Convert.ToSingle(str2);
int num2 = 4;
float float2 = 4.26f;
char char1 = 'a';
string str3 = Convert.ToString(num2);
}
}
}
常量与转义字符
常量介绍:1、常量是固定值,程序执行期间不会改变,比如圆周率的值3.1415926不会改变。
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)
{
//变量的定义
int num1 = 12;
int num2;
//常量的定义
//常量的值必须是确定的,有可能变化的值都不可以赋值
//如何确定是不是变量的值,就是右边全都是常量
//const int constNum3 = Convert.ToInt32();
const int constNum3 = 1;
string str2 = "345";
Console.WriteLine(constNum3);
Console.ReadKey();
}
}
}