C#基础语法(第二天)

原创 2007年09月14日 11:24:00
三,变量:
  1,普通变量:
  (1),命名规则:字母或_或@ + 字母或_或数字 (/用于转义,@用于逐个转义指定,@常用于保留关键字前以保持与其他语言兼容)
  (2),声明变量: 变量类型 变量名
  变量赋值:变量 = 要赋的值
  C#变量被访问之前必须被初始化;否则编译时会报错。因此,不可能访问一个未初始化变量(如不确定的指针、超出数组边界的表达式)。变量在使用前最好习惯是要先声明和初始化。
  (3)C#中没有全局的的变量或全局函数,全局方式的操作是通过静态函数和静态变量来实现的。
  本帖相关代码   [全显模式]

int i;
string text;//在循环外未初始化
for (i = 0;i<10;I++)
{
  text = "Line" + Convert.ToString(i);//在循环中未初始化,在退出循环的时候会丢失值,再引用就出错。
  Console.WriteLine("{0},text);
}
Console.WriteLine("
Last txet output in loop:{0},text);//出错。改正方法是在循环外初始化:string text="";


      (4)命名约定:简单的用camelCase,复杂的用PascalCase
  (5)变量的七种类型:
  本帖相关代码   [全显模式]

class A
{
  public static int x;//静态变量,存在期从类装载直到该程序结束。
  int y;//非静态变量,或实例变量,从类实例创建到实例空间释放。

  /*v[0]是数组元素,a是值参数,b是引用参数,c是输出参数 */
  void F(int[] v,int a,ref int b,out int c){
    int i = 1;//局部变量,不会被初始化
    c = a + b++;//
  }
}

  2,枚举
    enum 枚举名:枚举值类型(默认是int,默认赋值0,1,2...)
    {
     枚举值1=...,
     枚举值2=...,
     枚举值3,//不赋值的话,默认为最后一个明确具体值的值+1
     ...
    }
    枚举名 变量名=枚举名.枚举值

  本帖相关代码   [全显模式]

namespace Ch05Ex02
{
  enum orientation:byte
  {
    north=1,
    south=2,
    east=3,
    west=4
  }
///Class1's Desciption
class Class1
  {
  static void Main(string[] args)
    {
        byte directionByte;
        string directionString;
        orientation myDirection = orientation.north;
        Console.WriteLine("mydirection = {0}", myDirection);
        directionByte = (byte)myDirection;//因为enum存得下byte,所以理论上可以正确地反过来转换,但逻辑上不一定正确。myDirection = (orientation)myByte;
        directionString = Convert.ToString(myDirection);//等价命令是directionString = myDirection.ToString();
//因为不单是把枚举变量值转存到string变量中,所以不能用string(mydirection);
//反向转换命令是orientation myDirection = (orientation)Enum.Parse(typeof(orientation),myString);但由于enum不一定存得下 string,所以可能出错。如myString赋值为North,就不能映射到orientation中的north,出错。
        Console.WriteLine("byte equivalent = {0}", directionByte);
        Console.WriteLine("string equivalent = {0}", directionString);
    }
  }
}

  3,结构
    struct 结构名:
    {
     访问方式1 变量类型1 变量名1;//访问方式public/private
     访问方式2 变量类型2 变量名2;
     ...
    }
    结构名 结构变量名;
    结构变量名.枚举值=...;

  4,一维数组
  变量类型[] 数组名 = new 变量类型[元素个数]{元素0,元素1,元素2...}//元素个数必须是整数或者整数常量,而且必须与后面的元素列值个数相同,否则出错。元素个数的new声明和后面的元素列值可以只选一个,就能声明并初始化数组。
遍历方法
  A,For循环到.Length

for(i=0,i<friendNames.Length,i++)
{
  Console.WriteLine(friendNames[i]);
}
  B,Foreach进行只读访问
foreach(string listName in friendNames)
{
  Console.WriteLine(listName);
}
  5,二维数组(多维)
    变量类型[,] 数组名 = new 变量类型[一维元素个数,二维元素个数]{{元素00,元素01,元素02...},{元素10,元素11,元素12...}...}


  6,直角数组(交错数组,数组中的数组)
  7,字符串操作:
  本帖相关代码   [全显模式]

string myString = "I have a dream.";
char myChar = myString[2];//把string变量当作只读的char数组使用,不能改写myString[2]
char[] myChars = myString.ToCharArray();

char[]separator = {' '};//设定分隔符
string[] myWords =myString.Split(separator);//分隔成数组
Console.WriteLine("myString have {0} chars",myString.Length);
myString=myString.ToLower();//转小写
myString=myString.ToUpper();//转大写
myString=myString.Trim();//删前后空格
myString=myString.TrimStart();//删前空格
myString=myString.TrimEnd();//删后空格
myString=myString.PadLeft(位数);//前补空格到指定位数
myString=myString.PadRight(位数);//后补空格到指定位数
myString=myString.PadLeft(位数,字符);//前补指定字符到指定位数
char[] trimChars = {"e","#","*"};
myString = myString.trim(trimChars);//删指定字符

一、C#学习基础篇----基础语法

C#是一种面向对象的语言,类似于java,面向对象有的特点他都具备了面向对象的三个 基本特性,封装,继承,多态。其他的不多说了,我们直奔主题,C#有基本数据类型,和引用数据类型之分, 基本数据类型有b...
  • u011017980
  • u011017980
  • 2015年05月08日 23:50
  • 1642

C#基础班第二天笔记(基础语法)

1、注释符 1)、注销 2)、解释 2、c#的3种注释符 1)、单行注释 // 2)、多行注释 /*要注释的内容*/ 3)、文档注释 /// 多用来解释类或者方法 3、变量 用来在计算机当...
  • qq_25110517
  • qq_25110517
  • 2015年01月06日 19:53
  • 160

java基础第二天——基础语法

常量: 在程序执行过程中,其值不能改变 常量的分类: 字面值常量: 整数常量: 1, 12, -2 小数常量: 5.5, 3.414, -2.5 字符常量: 'a' 'A' '0'...
  • Sky_jsm
  • Sky_jsm
  • 2015年12月09日 19:14
  • 264

第二天基础语法二

第一部分:if-else语句,switch语句,while循环,do-while循环,以及关键字continue,break的使用。 1:判断结构       三种格式: 第一种:if(条件表达...
  • porter728173639
  • porter728173639
  • 2013年04月21日 12:20
  • 239

python学习第二天——基础语法

一. python标识符  在python里,标识符由字母、数字、下划线组成且区分大小写。  以下划线开头的标识符是有特殊意义的。以单下划线开头_foo的代表不能直接访问的类属型,需要通过类提供的...
  • github_38614120
  • github_38614120
  • 2018年01月21日 19:22
  • 21

object-c基础语法(-) 第二天

一是:定义一个类,xcode会自动生成.h和.m文件。其中其中在.h文件中主要接口的定义,一些变量和方法,需要在此文件中声明。然后在.m文件去实现这些方法。 二是:一些差别和Java的。主要有定义函...
  • android_panda
  • android_panda
  • 2012年11月27日 10:05
  • 1351

php学习第二天----基础语法4

1.get请求 2.post请求 3.文件上传 /**************************************************************get请求******...
  • u014702332
  • u014702332
  • 2016年06月04日 15:58
  • 183

php学习第二天---基础语法2

类的创建与声明,方法,构造函数,类的继承,方法重写,类方法,成员方法 ...
  • u014702332
  • u014702332
  • 2016年06月04日 10:39
  • 203

【达内训练营第二天】07_27_C基础语法

怎么增加环境变量 PATH?在终端下的当前目录下输入kate ~/.bashrc  ——>打开会话——>在末尾增加“export PATH=$PATH:.“(不含双引号)---------------...
  • jinxiuzhi
  • jinxiuzhi
  • 2010年07月31日 07:51
  • 738

实习笔记: 实习第二天工作总结

今天去的稍微晚点,但是还是第一个到的,来了只会,又来个做前端的妹子,人家3年工作经验,看起来很强势的妹子! 早上:看了一早上,什么事情都没有做成,看看文件包,理解东西,框架内容,分部。 思路大概是...
  • java_wht
  • java_wht
  • 2017年05月16日 20:11
  • 478
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C#基础语法(第二天)
举报原因:
原因补充:

(最多只允许输入30个字)