如何做简易个人网站/google安卓手机下载

如何做简易个人网站,google安卓手机下载,做网站好公司哪家好,黑龙江住房和城乡建设厅官网目录 第一章 C#与VS介绍 第二章 第一个C#程序 (1)C#程序基本组成 1.命名空间 2.类 3.Main方法 4.注释 5.语句 6.标识符及关键字 (2)程序编写规范 1.代码编写规则 2.程序命名方法 3.元素命名规范 第三章 变量 &…

目录

第一章 C#与VS介绍

第二章 第一个C#程序

(1)C#程序基本组成

1.命名空间

 2.类

3.Main方法

4.注释

5.语句

6.标识符及关键字

(2)程序编写规范

1.代码编写规则

2.程序命名方法

3.元素命名规范

第三章  变量

(1)变量的声明及初始化

1.声明

 2.初始化

3.变量作用域

(2)数据类型

 1.值类型

2.引用类型(存储对值的引用)

3.值类型与引用类型的区别

4.数据类型转换

(3)常量

1.常量的分类

第四章 表达式

(1)运算符

(2)运算符优先级与结合性

第五章 字符

 (1)字符串

(2)字符串操作

(3)可变字符串(StringBuilder)


        本文主要介绍C#入门的基础知识,希望能帮助大家更好的学习C#。学习课程是——C#从入门到精通(第5版)_哔哩哔哩_bilibili

如有时间,推荐看视频学习。本文主要对其进行总结。需要有一定的语言基础。

第一章 C#与VS介绍

        想了解可以看视频。这里不再过多赘述。(视频安装的VS版本较老,建议装新的)。

第二章 第一个C#程序

using System;    //引用命名空间
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace ConsoleApp1 //命名空间
{internal class Program  //类{static void Main(string[] args) //入口{Console.WriteLine("hello world"); //C#标准输出Console.ReadLine();               //C#标准输入}}
}
(1)C#程序基本组成
1.命名空间

        C#中的一种代码组织形式,主要用来标识类的可见范围。例如consoleApp1。

        定义:namespace   命名空间名称

        引用:using  命名空间名称

 2.类

        一种数据结构,存储数据成员,方法成员和其他类等内容,便于调用。例如program。

        定义:class 类名 { // 代码 };

        使用:实例化一个类对象。

3.Main方法

        C#程序的入口。要求:1.必须定义为static、2.首字母必须大写、3.返回值只能为void或int(必须有return)、4.命令行参数可选。

4.注释

        对代码功能进行说明。

        分类:行注释  用法://  注释内容

                   块注释  用法:/* 注释内容 */

5.语句

        实质上是实现各种功能的C#代码。

6.标识符及关键字

        标识符:类似于一个名字,例如类名、变量名、方法名、数组名等。

        命名要求:1.首字母为字母或下划线,其余部分为数字、字母和下划线。2.标识符不能与关键字冲突。3.区分大小写。

        关键字:表示特定的意义。C#常用的关键字如下所示。

intpublicthisfinallybooleanabstract
continuefloatlongshortthrowreturn
breakforforeachstaticnewinterface
voidtryswitchelsecatchprivate
ifgotodefaultbytedo

case

doubleprotectedwhilecharclassusing
(2)程序编写规范
1.代码编写规则

        尽量使用接口编程,关键语句一定编写注释。

        局部变量随用随声明,尽量少用goto语句。

        如果参数多建议使用结构,避免对大段代码使用try...catch。

        一个文件避免编写多个类,字符串多变时用StringBuilder。

        if语句块中使用“{ }”,switch语句一定编写default。

2.程序命名方法

        Pascal命名法:所有单词第一个字母大写,其他小写。如User。

        Camel命名法(驼峰命名法):除了第一个单词,所有单词第一个字母大写。其他小写。如userName。

3.元素命名规范

        项目名/命名空间名:项目名称。

        接口:一切接口始于“I”。

        类名:与功能或操作切合。

        方法名:体现方法的操作。

        成员变量:尽量加前缀“_”。

第三章  变量

(1)变量的声明及初始化

        一个变量就是存储区中的一个存储单元。

1.声明

        根据类型分配空间。 变量类型   变量名 = 数值;如 int  i =100;

        变量命名规则:首字母为字母或下划线+其余部分(数字、字母和下划线)、简单表明变量的作用。不能与关键字冲突、区分大小写、不能用汉字。 

 2.初始化

        将数据存入内存空间。如  money = 100;

        初始化的三种方法:1.单独初始化变量。2.声明时初始化。3.同时初始化多个变量。

3.变量作用域

        成员变量:类中定义的变量。(作用域:类内)。常用:1.静态变量(加static)   2.实例变量

        局部变量:一对“{}”中定义的变量。(作用域:{ }内)。

(2)数据类型
 1.值类型

        简单:数值型(如int 、float等)(使用时注意取值范围)。特殊的:decimal(精度达到28位)主要用于货币计算。

        字符(char)

        布尔(bool):主要用于表示true/false值。例如,bool x = true;

        复合:结构体、枚举:enum 枚举名{值1,值2 ....}

2.引用类型(存储对值的引用)

        类(object类(基类):所有类的基类。string类(不可改变性):简化字符串操作。

        接口、数组、委托。

3.值类型与引用类型的区别

        值类型传递是复制到各自的区域(存储在栈区),引用类型传递则指向同一块区域(存储在堆区)。

4.数据类型转换

        隐式类型转换:自动进行类型转换。要求两种类型兼容,目标精度大于源类型。例如int转double。

        显式类型转换:1.(类型名)表达式。例如 int a = (int) 10.2;高精度转低精度会截断。精度损失。不能溢出。

        2.convert.to类型名(表达式)。溢出会提示错误。

        3.类型名.parse(表达式)(只能用于数值类型)   

        装箱:值类型->引用类型   例如:object  obj = 值;

        拆箱:引用类型->值类型   例如:int j = (int)obj;类型一致

(3)常量

        定义:不能被改变的量。

1.常量的分类

        编译时常量(使用const定义)与运行时常量(使用readonly定义)。

        区别:const需要初始化,readonly不需要初始化。

第四章 表达式

        表达式:由运算符和操作数组成的。

(1)运算符

        算数运算符:+、-、*、/(不能除以0)、%(求余结果符号与左操作数符号一致)。

        赋值运算符:=

        复合赋值运算符:将赋值运算符和其他运算符结合使用,从而实现两种运算法效果。

    例如:+=、-=、/=、&=、>>=、%=等。自动完成类型转换。

        关系运算符:==(相等)、>=(大于等于)、<=(小于等于)、!=(不等)、>、<。

        逻辑运算符:&&或&(与)、||或|(或)、!(非)。&&与||是短路运算符,第一个条件满足就不会判断第二个条件。

        位运算符:&(位与)、|(位或)、位取反(~)、位异或(^)。<<(左移)、>>(右移)

        条件运算符:判断表达式?结果1:结果2;true——结果1,false——结果2。

        逗号运算符:<表达式1>,<表达式2>,...,起连接作用

        is运算符:对象 is 类型。对象是不是该类型。是返回true,不是false。

(2)运算符优先级与结合性

第五章 字符

        字符:C#语言中,使用char/Char类定义字符,并且只能用单引号括起来单个字符。 

        转义字符:以‘\’开头,后跟一个或多个字符。具有特定含义。

 (1)字符串

        声明:string  字符串名;

        初始化:1.引用字符串常量。例如,string a = “你好”;

        2.使用字符数组或其中一部分初始化。例如,string a = new string(char[] value), string a = new string(char[] value,int offset,int count);

        空字符串和空引用的区别

        string s1 = " "; 是个字符串,分配了空间,只是没有数据而已。

        string s2 = null; 空对象,没有指向任何地址。

(2)字符串操作

        1.连接字符串:使用“+”号运算符实现拼接功能。例如 string a  = “123”+“456”;

        2.比较字符串

                1.compare方法。string.compare(str1,str2)  1大于,-1小于,0相等。

                2.compareTo方法。s1.compareTo(s2);

                3.euqals方法。相等返回true,不相等false。string.equals(s1,s2);

        字符比较的顺序:空字符<数字<小写字母<大写字母<汉字。

        3.格式化字符串

                使用string提供的Format方法。例如,string s1 = string.Format("{0}*{1} = {2}",2,3,6);

格式说明符名称实例
C货币

¥100

DDecimal1234
E指数1.05e+003
定点

1234.56

NNumber

1,234,567

P百分比100%
X十六进制00ff

        标准日期时间格式

        另一种格式化方法

       使用tostring方法。 例如:int money = 100; money.tostring("C");

4.截取字符串

        string类的Substring方法。

        例如 str.Substring(int startIndex)或str.Substring(int startIndex,int length);

        超出索引范围会报错。下标是从0开始。

 5.分割字符串

        string类的split方法。

        例如str.Split(new char[] {‘,’});或str.Split(new char[] {‘,’},2);

6.插入字符串

        string类的Insert方法。例如 str.Insert(int startIndex,string value);

7.删除字符串

        string类的Remove方法。例如str.Remove(int startIndex)/str.Remove(int startIndex,int count);

8.复制字符串

        string类提供的Copy方法。例如string.Copy(string str);(全部复制)

        str.CopyTo(int start,char[] des,int start_des,int count);(部分复制)

 9.替换字符串

        string类的Replace方法。例如 str.Replace(char oldchar,char newchar);或str.Replace(string oldchar,string newchar)。

(3)可变字符串(StringBuilder)

        常用方法

方法说明
Append将字符串追加到指定对象末尾
AppendFormat自定义变量的格式并将这些值追加到对象末尾
Insert将字符串或对象添加到当前对象的指定位置
Remove从当前对象移除指定数量的字符
Replace用另一个指定的字符替代对象中的字符

        示例:

  StringBuilder title = new StringBuilder("(),(),(),2、4、6、7、8");Console.WriteLine(title);title.Remove(0, 9);title.Insert(0, "(门前大桥下),(游过一群鸭),(快来快来数一数),");Console.WriteLine(title);

字符串和可变字符串区别

        string操作会产生额外的副本,占用空间,效率低。

        stringBuilder操作不会产生额外的副本,效率高。

示例

  static void Main(string[] args) {string str = "";long startTime = DateTime.Now.Millisecond;for(int i = 0; i < 20000; i++){str +=i;}long endTime = DateTime.Now.Millisecond;long time = endTime - startTime;Console.WriteLine("string消耗的时间:"+time);StringBuilder sb = new StringBuilder("");long startTime2 = DateTime.Now.Millisecond;for (int i = 0; i < 20000; i++) {sb.Append(i);}long endTime2 = DateTime.Now.Millisecond;long time2 = endTime2 - startTime2;Console.WriteLine("StringBuilder消耗的时间:" + time2);}

        运行结果

string消耗的时间:116
StringBuilder消耗的时间:2

        从结果可以看出,对string和stringBuilder进行20000次操作,执行时间相差几十倍。这对程序性能的优化很重要。

        第一部分笔记到此为止,后续也会分享,详细内容还是推荐大家看视频学习。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/73998.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

东隆科技携手PRIMES成立中国校准实验室,开启激光诊断高精度新时代

3月12日&#xff0c;上海慕尼黑光博会期间&#xff0c;东隆科技正式宣布与德国PRIMES共同成立“中国校准实验室”。这一重要合作标志着东隆科技在本地化服务领域的优势与PRIMES在激光光束诊断领域的顶尖技术深度融合&#xff0c;旨在为中国客户提供更快速、更高精度的服务以及本…

SysOM 可观测体系建设(一):万字长文解读低开销、高精度性能剖析工具livetrace

可观测性是一种通过分析系统输出结果并推断和衡量系统内部状态的能力。谈及可观测性一般包含几大功能&#xff1a;监控指标、链路追踪、告警日志&#xff0c;及 Continues Profiling 持续剖析能力。对于操作系统可观测&#xff0c;监控指标可以帮助查看各个子系统&#xff08;I…

网络安全设备配置与管理-实验4-防火墙AAA服务配置

实验4-p118防火墙AAA服务配置 从这个实验开始&#xff0c;每一个实验都是长篇大论&#x1f613; 不过有好兄弟会替我出手 注意&#xff1a;1. gns3.exe必须以管理员身份打开&#xff0c;否则ping不通虚拟机。 win10虚拟机无法做本次实验&#xff0c;必须用学校给的虚拟机。首…

路由Vue Router基本用法

路由的作用是根据URL来匹配对应的组件&#xff0c;并且无刷新切换模板的内容。vue.js中&#xff0c;可使用Vue Router来管理路由&#xff0c;让构建单页应用更加简单。 一、效果 二、实现 1.项目中安装Vue Router插件 pnpm install vue-routerlastest 2.main.js import { …

【Qt】Qt + Modbus 服务端学习笔记

《Qt Modbus 服务端学习笔记》 1.因为项目的需要&#xff0c;要写一个modbus通信&#xff0c;csdn上感觉有些回答&#xff0c;代码是人工智能生成的&#xff0c;有些细节不对。我这个经过实测&#xff0c;是可以直接用的。 首先要包含Qt 的相关模块 Qt Modbus 模块主要包含以…

CherryStudio + 火山引擎DeepSeek R1 告别服务器繁忙

CherryStudio 火山引擎DeepSeek R1 告别服务器繁忙 一、下载CherryStudio并安装 CherryStudio是功能强大的多模型桌面客户端&#xff0c;支持Windows、macOS和Linux系统。集成了多种主流的大语言模型&#xff08;如OpenAI、DeepSeek、Gemini等&#xff09;以及本地模型运行功…

Unity TextMeshPro中显示建筑特殊符号

示例&#xff1a;显示效果如图 实现步骤 1、下载 SJQY 字体库 2、导入字体&#xff1a;将 SJQY 字体文件&#xff08;如 .ttf 或 .otf 文件&#xff09;导入到 Unity 项目的 Assets 文件夹中。 3、创建 TMP 字体资产 方法一 方法二 选择刚导入的字体文件&#xff0c;在…

Windows Docker 报错: has no HTTPS proxy,换源

pull python 3.7报错&#xff1a; 尝试拉取Docker 测试库hello world也失败 尝试使用临时镜像源&#xff0c;可以成功拉取&#xff1a; sudo docker pull docker.m.daocloud.io/hello-world说明确实是网络问题&#xff0c;需要配置镜像源&#xff0c;为了方便&#xff0c;在d…

Git远程拉取和推送配置

Git进行远程代码拉取和推送时候提示配置user.name 和 user.email 背景&#xff1a;换新电脑后使用Git进行代码拉取和推送过程中&#xff0c;提示“Make sure you configure your “user.name” and “user.email” in git.”。这个配置针对git的正常使用仅需要配置一次&#xf…

详解string类+迭代器

迭代器 概念&#xff1a;在 C 中&#xff0c;迭代器是访问容器&#xff08;如数组、列表、向量、字符串等&#xff09;元素的一种方式。迭代器提供了一种统一的接口&#xff0c;使得你可以使用相同的代码来遍历不同类型的容器。迭代器本质上是一个指针或者指针的封装&#xff0…

小红书不绑定手机号会显示ip吗

小红书作为一个生活方式分享平台&#xff0c;拥有庞大的用户群体。在小红书上&#xff0c;用户可以分享自己的生活点滴、购物心得、美食体验等&#xff0c;与其他用户进行互动交流。最近&#xff0c;不少用户对于小红书是否会在不绑定手机号的情况下显示IP属地产生了疑问&#…

Web-Machine-N7靶机实战攻略

1.安装并开启靶机 下载VirtualBox&#xff1a;https://www.virtualbox.org 导入虚拟机 设置为桥接模式 2.获取靶机IP Kali设为桥接模式 3.访问靶机 4.获取敏感目录文件和端口 gobuster dir -u http://172.16.2.68 -w /usr/share/wordlists/dirbuster/directory-list-2.3-me…

Linux|fork命令及其使用的写时拷贝技术

fork复制进程 fork通过以下步骤来复制进程&#xff1a; 分配新的进程控制块&#xff1a;内核为新进程分配一个新的进程控制块&#xff08;PCB&#xff09;&#xff0c;用于存储进程的相关信息&#xff0c;如进程 ID、状态、寄存器值、内存指针等。复制进程地址空间&#xff1…

TCP、UDP协议的应用、ServerSocket和Socket、DatagramSocket和DatagramPacket

DAY13.1 Java核心基础 TCP协议 TCP 协议是面向连接的运算层协议&#xff0c;比较复杂&#xff0c;应用程序在使用TCP协议之前必须建立连接&#xff0c;才能传输数据&#xff0c;数据传输完毕之后需要释放连接 就好比现实生活中的打电话&#xff0c;首先确保电话打通了才能进…

Web爬虫利器FireCrawl:全方位助力AI训练与高效数据抓取

Web爬虫利器FireCrawl&#xff1a;全方位助力AI训练与高效数据抓取 一、FireCrawl 项目简介二、主要功能三、FireCrawl应用场景1. 大语言模型训练2. 检索增强生成&#xff08;RAG&#xff09;&#xff1a;3. 数据驱动的开发项目4. SEO 与内容优化5. 在线服务与工具集成 四、安装…

【C#】CS学习之Modbus通讯

摘要 本文详细描述了如何在在C#的Winform应用程序中使用NModbus库实现Modbus通讯&#xff0c;包括读取保持寄存器、以及相应的UI界面设计和事件处理。 前言 ​应用场景 Modbus 从站广泛应用于工业自动化领域&#xff1a; 1、传感器数据采集&#xff08;如温度、压力等&#xf…

windows环境下NER Python项目环境配置(内含真的从头安的perl配置)

注意 本文是基于完整项目的环境配置&#xff0c;即本身可运行项目你拿来用 其中有一些其他问题&#xff0c;知道的忽略即可 导入pycharm基本包怎么下就不说了&#xff08;这个都问&#xff1f;给你一拳o(&#xff40;ω*)o&#xff09; 看perl跳转第5条 1.predict报错多个设备…

使用DDR4控制器实现多通道数据读写(四)

在创建完DDR4的仿真模型后&#xff0c;我们为了实现异步时钟的读写&#xff0c;板卡中在PL端提供了一组差分时钟&#xff0c;可以用它通过vivado中的Clock Wizard IP核生成多个时钟&#xff0c;在这里生成两个输出时钟&#xff0c;分别作为用户的读写时钟&#xff0c;这样就可以…

企业数字化20项目规划建设方案微服务场景与数据应用(50页PPT)(文末有下载方式)

资料解读&#xff1a;企业数字化 2.0 项目规划建设方案微服务场景与数据应用 详细资料请看本解读文章的最后内容。 在数字化浪潮的席卷下&#xff0c;企业数字化转型已成为提升竞争力、实现可持续发展的关键路径。这份《企业数字化 2.0 项目规划建设方案微服务场景与数据应用》…

蓝桥杯之AT24C02的页写页读

一、原理&#xff1a; 1、页写&#xff1a;一次性向AT24C02里的多个数据存储单元地址写入多个数据 &#xff08;1&#xff09;在AT24C02的页写模式下&#xff0c;每次写入数据后&#xff0c;存储单元地址会自动加1。 &#xff08;2&#xff09;一页有8个数据存储单元&#xff…