当前位置: 首页 > news >正文

C#学习笔记(五)

C#学习笔记(五)

    • 第 三 章 基本语句以及语法
      • 一、控制台的基本语句使用
        • 1. 方法重载
        • 2. 输入输出
        • 3.字符串格式化
      • 二、赋值运算符、算数运算符、比较运算符
      • 三、数据类型转换常用方法使用、比较和选择
        • 1. 自动类型转换(隐式转换)
        • 2. 强制类型转换
          • 2.1 数值类型之间的强制转换
          • 2.2 字符串到值类型的强制转换-Parse
          • 2.3 强制类型转换之万能转换器-Convert
        • 3. 总结

第 三 章 基本语句以及语法

一、控制台的基本语句使用

1. 方法重载

‌C#中的方法重载(Method Overloading)是指在同一个类中,可以定义多个方法具有相同的名称但参数列表不同的情况。‌ 通过方法重载,可以根据不同的参数类型或参数个数来调用不同的方法,从而提高代码的灵活性和可读性‌。

public void Show()
{Console.WriteLine("Nothing");
}public void Show(int number)
{Console.WriteLine(number);
}

在这个例子中,Show 方法被重载了两次,一次是没有参数,一次是接受一个整数参数。编译器会根据调用时提供的参数类型和个数来决定调用哪个 Show 方法‌。
摘自
https://blog.csdn.net/wyhmtt/article/details/72847271

2. 输入输出

Console:控制台

  1. ReadLine()方法:读取当前用户输入内容的方法,此内容都是字符串类型。如果接收的变量不是字符串,需要对应的类型转换。
  2. WriteLine()方法:输出字符串的方法,并自动换行。这个方法有很多重载
  3. Write()方法:直接输出字符串,不换行,其他的同上。
3.字符串格式化
            int height = 160;int age = 13;
// 使用占位符拼接string self = string.Format("我今年{1} 岁,身高{0}cm", height, age);Console.WriteLine(self);Console.WriteLine("我今年{1} 岁,身高{0}cm", height, age);
// .NET4.6 版本语法新特性,简化写法            self = $"我今年{age} 岁,身高{height}cm";Console.WriteLine(self);Console.WriteLine($"我今年{age} 岁,身高{height}cm");

在这里插入图片描述

二、赋值运算符、算数运算符、比较运算符

  1. 赋值运算符:=
  2. 算数运算符:a=a+1;a+=1;a++;表示同一含义
  3. 比较运算符:==、!=、>、<、>=、<= 两个变量的比较,返回结果只有两个: true/false(bool 类型)

三、数据类型转换常用方法使用、比较和选择

1. 自动类型转换(隐式转换)
  1. 转换条件
    第一、两种类型必须是值类型(整型和浮点类型)。
    第二、目标类型必须大于要转换的类型,例如 double 大于 int。
  2. 使用方法
    在这里插入图片描述
    如果不遵循第二条就会产生语法错误
    在这里插入图片描述
2. 强制类型转换
2.1 数值类型之间的强制转换

在这里插入图片描述
会涉及到精度丢失

2.2 字符串到值类型的强制转换-Parse

需要注意的是字符串必须是值类型的“有效表示形式”
在这里插入图片描述

            double a = double.Parse("200.3");float b = float.Parse("20.45");int c = int.Parse("200");int d = (int)double.Parse("200.55");double e = double.Parse("200");// 值类型 -->字符串string s1 = a.ToString();string s2 = b.ToString();Console.WriteLine($"a:{a}\nb:{b}\nc:{c}\nd:{d}\ne:{e}\ns1:{s1}\ns2:{s2}\n");
2.3 强制类型转换之万能转换器-Convert

Convert
转换为Init: Convert.ToInt32
转换为float: Convert.ToSingle
转换为double: Convert.ToDouble
转换为string: Convert.ToString
转换为DateTime: Convert.ToDateTime

3. 总结

第一、强制类型转换之 Parse,只适合字符串到值类型的转换。
第二、强类型转之 Convert,适合各种类型之间的转换。
第三、强类型转换之(目标类型)变量,一般适合值类型之间的转换。
第四、自动类型转换,一般只适合于低精度的值变量到高精度的值类型。

相关文章:

C#学习笔记(五)

C#学习笔记&#xff08;五&#xff09; 第 三 章 基本语句以及语法一、控制台的基本语句使用1. 方法重载2. 输入输出3.字符串格式化 二、赋值运算符、算数运算符、比较运算符三、数据类型转换常用方法使用、比较和选择1. 自动类型转换(隐式转换)2. 强制类型转换2.1 数值类型之间…...

视频云存储/音视频流媒体视频平台EasyCVR视频汇聚平台在欧拉系统中启动失败是什么原因?

视频监控/视频集中存储/磁盘阵列EasyCVR视频汇聚平台具备强大的拓展性和灵活性&#xff0c;支持多种视频流的外部分发&#xff0c;如RTMP、RTSP、HTTP-FLV、WebSocket-FLV、HLS、WebRTC、fmp4等&#xff0c;这为其在各种复杂环境下的部署提供了便利。 安防监控EasyCVR视频汇聚平…...

spring源码中的,函数式接口,注解@FunctionalInterface

调用方 /org/springframework/beans/factory/support/AbstractBeanFactory.java:333sharedInstance getSingleton(beanName, () -> {try {return createBean(beanName, mbd, args);}catch (BeansException ex) {// Explicitly remove instance from singleton cache: It mi…...

分布式系统中的Session共享:实现跨服务器的用户登录信息同步

引言 在现代Web应用中&#xff0c;分布式架构已经成为主流。随着业务规模的扩大&#xff0c;单台服务器往往难以承载所有的请求&#xff0c;因此需要多台服务器协同工作来提供服务。然而&#xff0c;在这种分布式环境中&#xff0c;如何确保用户的登录状态能够在不同的服务器之…...

【LeetCode每日一题】——1588.所有奇数长度子数组的和

文章目录 一【题目类别】二【题目难度】三【题目编号】四【题目描述】五【题目示例】六【题目提示】七【题目进阶】八【解题思路】九【时间频度】十【代码实现】十一【提交结果】 一【题目类别】 前缀和 二【题目难度】 简单 三【题目编号】 1588.所有奇数长度子数组的和 …...

自定义多级联动选择器指南(uni-app)

多端支持&#xff1a;可以运行在H5、APP、微信小程序还是支付宝小程序&#xff0c;都可以轻松使用改组件。自定义配置&#xff1a;您可以根据需要配置选择器的级数&#xff0c;使其适应不同的数据结构和用例。无限级联&#xff1a;此组件支持无限级联选择&#xff0c;使您能够创…...

RHCE笔记-SSH服务

一.对称加密与非对称加密 1.1对称加密 1. 原理 对称加密是指加密和解密使用相同的密钥。也就是说&#xff0c;发送方和接收方在通信之前需要共享一个秘密密钥&#xff0c;使用这个密钥对数据进行加密和解密。 2. 常见算法 AES (Advanced Encryption Standard)&#xff1a;…...

java实现文件分片上传并且断点续传

文章目录 什么是断点续传后端实现JAVA实现大文件分片上传断点续传 什么是断点续传 用户上传大文件,网络差点的需要历时数小时&#xff0c;万一线路中断&#xff0c;不具备断点续传的服务器就只能从头重传&#xff0c;而断点续传就是&#xff0c;允许用户从上传断线的地方继续传…...

leetcode hot100 之【LeetCode 15. 三数之和】 java实现

LeetCode 15. 三数之和 题目描述 给你一个包含 n 个整数的数组 nums&#xff0c;判断 nums 中是否存在三个元素 a&#xff0c;b&#xff0c;c 使得 a b c 0&#xff1f;请你找出所有和为 0 且不重复的三元组。 注意&#xff1a; 答案中的三元组可以按任意顺序组织。在 n…...

mysql学习教程,从入门到精通,sql序列使用(45)

sql序列使用 在SQL中&#xff0c;序列&#xff08;Sequence&#xff09;是一种数据库对象&#xff0c;用于生成唯一的数值&#xff0c;通常用于自动递增的主键。不同的数据库管理系统&#xff08;DBMS&#xff09;对序列的支持和语法可能有所不同。以下是一些常见的DBMS&#…...

Java 中的异常处理、常见异常、如何自定义异常类、Checked 和 Unchecked 异常的区别、如何处理数据库事务中的异常

文章目录 1. 异常的基本概念与处理方法定义常见异常类补充说明&#xff1a; 异常处理方法示例 2.如何自定义异常类步骤示例 3. Java 中的 Checked 和 Unchecked 异常的区别Checked 异常Unchecked 异常示例 4. 如何处理数据库事务中的异常常见场景处理方式示例讨论 总结 异常是指…...

6.1 特征值介绍

一、特征值和特征向量介绍 本章会开启线性代数的新内容。前面的第一部分是关于 A x b A\boldsymbol x\boldsymbol b Axb&#xff1a;平衡、均衡和稳定状态&#xff1b;现在的第二部分是关于变化的。时间会加入进来 —— 连续时间的微分方程 d u / d t A u \pmb{\textrm{d}…...

Vue01

前端最新Vue2Vue3基础入门到实战项目全套教程&#xff0c;自学前端vue就选黑马程序员&#xff0c;一套全通关&#xff01;_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1HV4y1a7n4?spm_id_from333.788.videopod.episodes&vd_source016213ecd945408976ff307a6bda30…...

MySQL - Navicat自动备份MySQL数据

对于从事IT开发的工程师&#xff0c;数据备份我想大家并不陌生&#xff0c;这件工程太重要了&#xff01;对于比较重要的数据&#xff0c;我们希望能定期备份&#xff0c;每天备份1次或多次&#xff0c;或者是每周备份1次或多次。 如果大家在平时使用Navicat操作数据库&#x…...

系统分析师20:【案例特训专题3】系统设计与运维

1 Web开发 1.1 Web开发涉及技术的综合应用 高性能高可用可维护应变安全 1.2 Web系统架构演化过程 1.2.1 单台机器到数据库与Web服务器分离 早期的web系统往往以单台机器形态出现&#xff0c;web网站无论是前端还是后台数据库都部署在一台服务器上&#xff0c;部署起来比较…...

Linux 局域网中使用NTP配置时间服务

一&#xff1a;NTP 时间服务器配置 前提&#xff1a; 局域网环境中一般不能直接使用互联网上提供的时间服务器&#xff0c;例如ntp.aliyun.com。所以可以使用局域网中的一个服务器时间为基准&#xff0c;其他服务器的时间都和他保持一致。 1、将服务器的系统时间配置为时间源…...

Shiro会话管理和加密

一、会话相关API及会话使用 Shiro提供了完整的企业级会话管理功能&#xff0c;不依赖于底层容器&#xff08;如Web容器Tomcat&#xff09;&#xff0c;可以在JavaSE和JavaEE环境中使用。会话相关API主要包括&#xff1a; Subject.getSession(): 获取当前用户的会话&#xff0…...

GPON、XG-PON和XGS-PON的区别

类别GPON10G PON 细分 GPON XG-PON XGS-PON 下行速率 2.488 Gbps 9.953 Gbps 9.953Gbps 上行速率 1.244 Gbps 2.488 Gbps 9.953Gbps 可用带宽 2200Mbps 8500Mbps 8500Mbps 1000Mbps2000Mbps8500Mbps ITU-T标准 G.984&#xff08;2003年&#xff09; G.987 &a…...

Spring 项目返回值枚举类编写技巧

Spring 项目返回值枚举类编写技巧 在 Spring 项目中&#xff0c;使用枚举类来统一管理返回值和状态码是一种非常优雅的实现方式。这不仅能提升代码的可读性和维护性&#xff0c;还能避免在代码中硬编码字符串或数字来表示状态码。本文将以 ReturnCodeEnum 为例&#xff0c;介绍…...

【操作系统】06.进程控制

一、进程创建 1.1 认识fork函数 在linux中fork函数是非常重要的函数&#xff0c;它从已存在进程中创建一个新进程。新进程为子进程&#xff0c;而原进程为父进程。 进程调用fork&#xff0c;当控制转移到内核中的fork代码后&#xff0c;内核将 分配新的内存块和内核数据结构…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

C++实现分布式网络通信框架RPC(3)--rpc调用端

目录 一、前言 二、UserServiceRpc_Stub 三、 CallMethod方法的重写 头文件 实现 四、rpc调用端的调用 实现 五、 google::protobuf::RpcController *controller 头文件 实现 六、总结 一、前言 在前边的文章中&#xff0c;我们已经大致实现了rpc服务端的各项功能代…...

C++中string流知识详解和示例

一、概览与类体系 C 提供三种基于内存字符串的流&#xff0c;定义在 <sstream> 中&#xff1a; std::istringstream&#xff1a;输入流&#xff0c;从已有字符串中读取并解析。std::ostringstream&#xff1a;输出流&#xff0c;向内部缓冲区写入内容&#xff0c;最终取…...

让AI看见世界:MCP协议与服务器的工作原理

让AI看见世界&#xff1a;MCP协议与服务器的工作原理 MCP&#xff08;Model Context Protocol&#xff09;是一种创新的通信协议&#xff0c;旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天&#xff0c;MCP正成为连接AI与现实世界的重要桥梁。…...

MySQL 8.0 事务全面讲解

以下是一个结合两次回答的 MySQL 8.0 事务全面讲解&#xff0c;涵盖了事务的核心概念、操作示例、失败回滚、隔离级别、事务性 DDL 和 XA 事务等内容&#xff0c;并修正了查看隔离级别的命令。 MySQL 8.0 事务全面讲解 一、事务的核心概念&#xff08;ACID&#xff09; 事务是…...

关于easyexcel动态下拉选问题处理

前些日子突然碰到一个问题&#xff0c;说是客户的导入文件模版想支持部分导入内容的下拉选&#xff0c;于是我就找了easyexcel官网寻找解决方案&#xff0c;并没有找到合适的方案&#xff0c;没办法只能自己动手并分享出来&#xff0c;针对Java生成Excel下拉菜单时因选项过多导…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

破解路内监管盲区:免布线低位视频桩重塑停车管理新标准

城市路内停车管理常因行道树遮挡、高位设备盲区等问题&#xff0c;导致车牌识别率低、逃费率高&#xff0c;传统模式在复杂路段束手无策。免布线低位视频桩凭借超低视角部署与智能算法&#xff0c;正成为破局关键。该设备安装于车位侧方0.5-0.7米高度&#xff0c;直接规避树枝遮…...

【Elasticsearch】Elasticsearch 在大数据生态圈的地位 实践经验

Elasticsearch 在大数据生态圈的地位 & 实践经验 1.Elasticsearch 的优势1.1 Elasticsearch 解决的核心问题1.1.1 传统方案的短板1.1.2 Elasticsearch 的解决方案 1.2 与大数据组件的对比优势1.3 关键优势技术支撑1.4 Elasticsearch 的竞品1.4.1 全文搜索领域1.4.2 日志分析…...

es6+和css3新增的特性有哪些

一&#xff1a;ECMAScript 新特性&#xff08;ES6&#xff09; ES6 (2015) - 革命性更新 1&#xff0c;记住的方法&#xff0c;从一个方法里面用到了哪些技术 1&#xff0c;let /const块级作用域声明2&#xff0c;**默认参数**&#xff1a;函数参数可以设置默认值。3&#x…...