C#学习笔记(2):基础语法

C#组成部分如下

using 关键字表明程序使用的是给定命名空间中的名称,类似于Python中的import。也可以using namespace

命名空间namespace的设计目的是提供一种让一组名称与其他名称分隔开的方式。在一个命名空间中声明的类的名称与另一个命名空间中声明的相同的类的名称不冲突。其次命名空间可以嵌套

namespace first
{
	class name_1
	{
		public void func()
		{
			Console.WriteLine("命名空间1----");
		}
	}
}
namespace second
{
	class name_2
	{
		public void func()
		{
			Console.WriteLine("命名空间2!!!");
		}
	}
}
class MainTest
{
	static void Main(string[] args)
	{
		first.name_1 fc = new first.name_1();
		fc.func();
		second.name_2 sc = new second.name_2();
		sc.func();
		Console.ReadKey();
	}
}

当使用using后,可以讲上述代码修改为

using first;
namespace first
{
	class name
	{
		public void func()
		{
			Console.WriteLine("命名空间1----");
		}
	}
}
namespace second
{
	...
}
class MainTest
{
	static void Main(string[] args)
	{
		name fc = new name();//可以直接使用,但注意first和second只能using一个
		fc.func();
		second.name sc = new second.name();
		sc.func();
		Console.ReadKey();
	}
}

在 C# 中,变量分为以下几种类型:

  • 值类型(Value types)
  • 引用类型(Reference types)
  • 指针类型(Pointer types)

值类型变量可以直接分配给一个值。它们是从类 System.ValueType 中派生的。sizeof(类型)返回该类型字节长度,常见类型有int char bool double float等。

using System;
namespace TypesLength
{
	class type
	{
		static void Main(string[] args)
		{
			Console.WriteLine("bytes is {0}",sizeof(bool));
			Console.WriteLine("bytes is {0}",sizeof(byte));
			Console.WriteLine("bytes is {0}",sizeof(char));
			Console.WriteLine("bytes is {0}",sizeof(decimal));
			Console.WriteLine("bytes is {0}",sizeof(double));
			Console.WriteLine("bytes is {0}",sizeof(float));
			Console.WriteLine("bytes is {0}",sizeof(int));
			Console.WriteLine("bytes is {0}",sizeof(long));
			Console.ReadLine();
		}
	}
}

结果

引用类型不包含存储在变量中的实际数据,但它们包含对变量的引用。内置的 引用类型有:objectdynamic 和 string

对象(Object)类型 是 C# 通用类型系统(Common Type System - CTS)中所有数据类型的终极基类。Object 是 System.Object 类的别名。所以对象(Object)类型可以被分配任何其他类型(值类型、引用类型、预定义类型或用户自定义类型)的值。但是,在分配值之前,需要先进行类型转换。

当一个值类型转换为对象类型时,则被称为 装箱;另一方面,当一个对象类型转换为值类型时,则被称为 拆箱

字符串(String)类型 允许您给变量分配任何字符串值。字符串(String)类型是 System.String 类的别名。它是从对象(Object)类型派生的。字符串(String)类型的值可以通过两种形式进行分配:引号和 @引号。

class Str
	{
		public string str = "www.baidu.com";
		public string str1 = @"https:/www.baidu.com";
		public string str2 = @"随便输入字符串=====
		hahahahhahahahahahahhah----
		ennenenennenen。。。。。。
		";
	}

指针类型变量存储另一种类型的内存地址。C# 中的指针与 C 或 C++ 中的指针有相同的功能。

type* identifier;

C#类型转换

隐式类型转换和显式类型转换(又称强制类型转换)两种

ToBoolean转换为布尔型
ToByte转换为字节类型
ToChar转换为单个 Unicode 字符类型
ToDateTime把类型(整数或字符串类型)转换为 日期-时间 结构
ToDecimal把浮点型或整数类型转换为十进制类型
ToDouble把类型转换为双精度浮点型
ToInt16把类型转换为 16 位整数类型
ToInt32把类型转换为 32 位整数类型
ToInt64把类型转换为 64 位整数类型
ToSbyte把类型转换为有符号字节类型
ToSingle把类型转换为小浮点数类型
ToString把类型转换为字符串类型
ToType把类型转换为指定类型
ToUInt16把类型转换为 16 位无符号整数类型
ToUInt32把类型转换为 32 位无符号整数类型
ToUInt64把类型转换为 64 位无符号整数类型

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值