因为工作需要,我要学习C#,其实我觉得不错,我喜欢了解更多的语言,因为这对我今后的发展很有帮助,毕竟技多不压身,下面是我今天学习后总结C#的基本语法:

  我曾经学过C,而且又是java程序员,所以对我来说学习C#的难度不大,在这里我整合了一下C#的基本语法,以及他和JAVA的区别,同时也为其他想学C#的伙伴们提供一个便捷方式,首先先了解一下C#这个语言;

  简单的阐述一下C#:微软公司开发语言,和java相似,语法也有很多相同的地方,面向对象的编程语言,而且和.net有着某种关系,.Net 框架由一个巨大的代码库组成,用于 C# 等客户端语言。我们可以使用这款开发工具来开发C#:

  • Visual Studio 2010 (VS)

  我们先来做一个简单的控制台应用程序,就是小黑框的那种://当我们创建一个项目的时候系统会自动生成main方法(程序的主入口),以及引入这些乱码七糟的文件,这里面引入文件用的是using,在java里用的是import;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

//这个是命名空间,当你创建项目之后系统会自动给你创建一个 项目名.sln 的文件
namespace FirstApp
{
  //这里是类名,和java不同的是java类名必须和文件名一致,C#不用
class Program
{
     //主函数,也可以叫做主方法,和java一样的定义方式,可以说一模一样。
static void Main(string[] args)
{
       //这是C#的输出语句,这里用Console.WriteLine(); 有点类似于java里面的 System.out.println();
Console.WriteLine("Hello World!");
       //这是C#定义变量的方式,和java也一模一样,不同的是在C#中可以使用var来定义变量,这就有点像js,可以让系统自己来判断变量是什么类型,但是要注意用var定义的变量必须赋初值;
int x = ;
Console.WriteLine(x); int z = ;
double y = ;
       //用占位符的方式输出变量
Console.WriteLine("x = {0}; y = {1}", z, y); string yourName;
       
Console.WriteLine("What is your name?");
       /*这是C#中获取用户输入的语句,使用Console.ReadLine();
       类似于java中 Scanner scanner = new Scanner(System.in); int i = scanner.nextInt();
       不同的地方在于C#可以直接调用Console中的ReadLine()获取输入,而java中需要先实例化Scanner,然后再调其中的nextInt()方法,而且根据输入内容类型的不同需要用不同的方法接收
       而C#不需要那么麻烦,只需要ReadLine就可以接受所有类型,如果你想只接受特定类型的值也可以使用下面那种方法将输入内容进行转换*/
       yourName = Console.ReadLine();
Console.WriteLine("Hello {0}", yourName);
       //在这里使用Convert.ToInt32();的方法将输入内容转换成int,如果输入的内容不能转换成int将会报错;
int age = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("You are {0} years old", age);
       //这里是定义常亮的方法,常亮是不可以被第二次赋值的,一旦赋值就不可以改变,这里在变量前面加上const关键字就可以了,在java中需要加上final关键字
const double PI = 3.14;
Console.WriteLine(PI);
       //防止小黑框运行完之后秒退,这样就相当于做了一个获取用户输入回车键的拦截
Console.ReadKey();
}
}
}

  这些呢就算得上是C#的基本语法,其他的面向对象的特征我就不说了,像封装,继承,多态。还有一些,像接口,异常处理,文件流,事件,集合,泛型,线程这些事情呢逻辑上都是一样的,也没什么好说的,如果不会的话可以看看我博客主页相关java的这些处理方式,适当的改变语法,就可以了。

java程序员学C#的更多相关文章

  1. [转] Java程序员学C#基本语法两个小时搞定(对比学习)

    Java程序员学C#基本语法两个小时搞定(对比学习)   对于学习一门新的语言,关键是学习新语言和以前掌握的语言的区别,但是也不要让以前语言的东西,固定了自己的思维模式,多看一下新的语言的编程思想. ...

  2. Java程序员学C#基本语法两个小时搞定(对比学习)

    对于学习一门新的语言,关键是学习新语言和以前掌握的语言的区别,但是也不要让以前语言的东西,固定了自己的思维模式,多看一下新的语言的编程思想. 1.引包 using System;java用import ...

  3. JAVA程序员学PHP

    工作之余,趁着五一假期学习下PHP,都说PHP是世界上最美的语言,而且现在应用的有这么广泛,在短期时间内在编程的市场上打得火热,好奇心趋势我去学习一下,下面便是我学习PHP记录下来的过程,和大家分享一 ...

  4. Java程序员必学知识点

    JVM无论什么级别的Java从业者,JVM都是进阶时必须迈过的坎.不管是工作还是面试中,JVM都是必考题.如果不懂JVM的话,薪酬会非常吃亏(近70%的面试者挂在JVM上了) 详细介绍了JVM有关于线 ...

  5. Java 程序员们值得一看的好书推荐

    "学习的最好途径就是看书",这是我自己学习并且小有了一定的积累之后的第一体会.个人认为看书有两点好处: 能出版出来的书一定是经过反复的思考.雕琢和审核的,因此从专业性的角度来说,一 ...

  6. Java程序员

    从生存.制胜.发展三个方面入手,为大家展示出程序员求职与工作的一幅3D全景图像.本书中既有在公司中的生存技巧,又有高手达人的进阶策略,既有求职攻略的按图索骥,又有入职后生产环境的破解揭秘. 书中浓缩了 ...

  7. Java程序员学习之路

    1. Java语言基础 谈到Java语 言基础学习的书籍,大家肯定会推荐Bruce Eckel的<Thinking in Java>.它是一本写的相当深刻的技术书籍,Java语言基础部分基 ...

  8. 分享下对JAVA程序员成长之路的总结<转>

    我也搞了几年JAVA了,由于一向懒惰,没有成为大牛,只是一普通程序猿,手痒来给新人分享下从新手成长为老鸟的已见.   首先初识语法的阶段,必须要学会怎么操作对象,操作if和for,操作list set ...

  9. 从小工到专家 ——读《Java程序员职场全攻略》有感

    从小工到专家 ——读<Java程序员职场全攻略>有感   <Java程序员职场全攻略>是以故事的形式,向读者介绍Java程序员的职场经验.作者牛开复在北京从事软件开发,已经是一 ...

随机推荐

  1. Oracle--配置并保存PL/SQL Developer界面

    之前一直用SQL Server,现在刚接触Oracle,用PL/SQL Developer 客户端,在设置自已的使用习惯后保存界面 PL/SQL Developer初始界面布局,当你设置后,重新启动, ...

  2. 如何修改image文件

    方法一:mount成为一个loop device 参考http://smilejay.com/2012/08/mount-an-image-file/ 方法一:找出分区开始的开始位置,使用mount命 ...

  3. LeetCode编程训练 - 拓扑排序(Topological Sort)

    拓扑排序基础 拓扑排序用于解决有向无环图(DAG,Directed Acyclic Graph)按依赖关系排线性序列问题,直白地说解决这样的问题:有一组数据,其中一些数据依赖其他,问能否按依赖关系排序 ...

  4. Java二叉树实现及递归与非递归遍历实现

    树的遍历分两种:1.深度优先遍历 1.1 递归算法实现 2.2 非递归算法实现(使用栈存储)2.广度优先遍历(使用队列存储) import java.util.*; /** * 类功能描述: 二叉树遍 ...

  5. Java互联网架构-直播互动平台高并发分布式架构应用设计

    概述 网页HTML 静态化: 其实大家都知道网页静态化,效率最高,消耗最小的就是纯静态化的 html 页面,所以我们尽可能使我们的网站上的页面采用静态页面来实现,这个最简单的方法其实也是最有效的方法, ...

  6. MySQL InnoDB 备份与恢复七种方式

    有几种方式: 1 mysqldump, 这种方式不仅适用于InnoDB,还适用于其它类型的存储引擎,如MyISAM.备份的时候将数据库备份成SQL(包含drop,create,insert等语句),恢 ...

  7. 关于H5页面的测试总结与分析

    一.时下最流行的H5到底是什么 ?有什么优势和劣势? (1)H5 即HTML5,其实就是:移动端Web页面. (2)优势: H5可以跨平台使用,开发成本相对较低 H5可随时上线就更新版本,适合快速迭代 ...

  8. Java web每天学之Servlet工作原理详情解析

    上篇文章中我们介绍了Servlet的实现方式以及Servlet的生命周期,我们这篇文章就来介绍一下常用对象. 点击回顾:<Java Web每天学之Servlet的工作原理解析>:<J ...

  9. [Swift]LeetCode302. 包含黑色像素的最小矩形 $ Smallest Rectangle Enclosing Black Pixels

    An image is represented by a binary matrix with 0 as a white pixel and 1 as a black pixel. The black ...

  10. tensorflow、cuda、cudnn之间的版本对应关系

    原文链接 tensorflow-gpu v1.9.0 | cuda9.0 |  cuDNN7.1.4可行  | 备注:7.0.4/ 7.0.5/ 7.1.2不明确 tensorflow-gpu v1. ...