作为一名初级开发人员,我一直害怕学习主要使用 OOP 范式的“旧”编程语言。然而,今天我决定忍住,至少尝试一下。它并不像我想象的那么糟糕,它与 Javascript 有相似之处。让我们先了解一下基础知识。
本博客假设您了解 javascript
与动态类型语言 javascript 不同,C# 是静态类型语言:变量的数据类型在编译时就已知,这意味着程序员必须在变量使用时指定变量的数据类型。声明。
int: number (32bit) decimal: number (128bit) string: string bool: Boolean list[]: Array dictionary{}: Object
-------------- Declaration ---------------- int myInt = 2147483647; decimal myDecimal = 0.751m; // The m indicates it is a decimal string myString = "Hello World"; // Notice the double-quotes bool myBool = true;
注意:如果使用方法1和2,则无法添加或延长长度
声明和分配List方法1
string[] myGroceryArray = new string[2]; // 2 is the length myGroceryArray[0] = "Guacamole";
声明和分配List方法2
string[] mySecondGroceryArray = { "Apples", "Eggs" };
声明和分配List方法3
List<string> myGroceryList = new List<string>() { "Milk", "Cheese" }; Console.WriteLine(myGroceryList[0]); //"Milk" myGroceryList.Add("Oranges"); //Push new item to array
声明和分配多维列表
“,”的数量将决定尺寸
string[,] myTwoDimensionalArray = new string[,] { { "Apples", "Eggs" }, { "Milk", "Cheese" } };
专门用于枚举或循环的数组。
你可能会问,“和列表有什么区别?”。答案是:
IEnumerable 和 List 之间的一个重要区别(除了一个是接口,另一个是具体类)是 IEnumerable 是只读的,而 List 不是。
List<string> myGroceryList = new List<string>() { "Milk", "Cheese" }; IEnumerable<string> myGroceryIEnumerable = myGroceryList;
Dictionary<string, string[]> myGroceryDictionary = new Dictionary<string, string[]>(){ {"Dairy", new string[]{"Cheese", "Milk", "Eggs"}} }; Console.WriteLine(myGroceryDictionary["Dairy"][2]);
C# 中的运算符的行为与 javascript 非常相似,所以我不会在这里描述它
//Logic gate //There's no === in C# myInt == mySecondInt myInt != mySecondInt myInt >= mySecondInt myInt > mySecondInt myInt <= mySecondInt myInt < mySecondInt // If Else if () {} else if () {} else () {} // Switch switch (number) { case 1: Console.WriteLine("lala"); break; default: Console.WriteLine("default"); break; }
?使用 foreach 会比常规 for 循环快得多
int[] intArr = new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int totalValue = 0; for (int i = 0; i < intArr.Length; i++) { totalValue += intArr[i]; } int forEachValue = 0; foreach (int num in intArr) { forEachValue += num; }
C# 首先是一种面向 OOP 的语言。
namespace HelloWorld { internal class Program { static void Main() { int[] numArr = [1, 2, 3, 4, 5]; int totalSum = GetSum(numArr); } static private int GetSum(int[] numArr) { int totalValue = 0; foreach (var item in numArr) { totalValue += item; } return totalValue; } } }
命名空间用于组织目的,通常用于组织类
namespace HelloWorld.Models { public class Computer { public string Motherboard { get; set; } = ""; public int CPUCores { get; set; } public bool HasWIfi { get; set; } public bool HasLTE { get; set; } public DateTime ReleaseDate { get; set; } public decimal Price { get; set; } public string VideoCard { get; set; } = ""; }; }
从 C# 10 开始,我们也可以这样声明命名空间
namespace SampleNamespace; class AnotherSampleClass { public void AnotherSampleMethod() { System.Console.WriteLine( "SampleMethod inside SampleNamespace"); } }
using HelloWorld.Models;
以上是C# 基础:从 javascript 开发人员的角度来看的详细内容。更多信息请关注PHP中文网其他相关文章!