news 2026/6/14 22:40:16

C#字典操作与类对象全解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C#字典操作与类对象全解析

《字典》

字典:包含了key(键)和value(值),简称键值对,键是唯一的,值可以是任意类型的,字典是没有顺序的,只能通过键取值。
创建字典的方法
// Dictionary<string,string>第一个string 键的类型;第二个string值的类型
Dictionary<string,string> dic = new Dictionary<string,string>();

2添加键值对
dic.Add("news1","微信支付过年之后可能会被取消");//参数1键唯一,参数2是值
dic.Add("news2","柬埔寨生命科学学院最大股东是国内gs");
dic.Add("news3", "李连杰像个小朋友");

3根据键取出值
Console.WriteLine(dic["news1"]);//根据键取出值
Console.WriteLine(dic.Values);//获取所有的值的集合
Console.WriteLine(string.Join("-",dic.Values));
foreach (var item in dic.Values)//遍历字典里面所有值
{
Console.WriteLine(item+"-------------");
}
4取出键
Console.WriteLine(dic.Keys);//获取所有键的集合
Array.ForEach(dic.Keys.ToArray(), v => Console.WriteLine(v+"???????"));//dic.keys。ToArry()转成数组类型
7修改值
dic["news3"] = "三胎补助";
8根据键进行删除
dic.Remove("news3");
9 是否包含news3键
Console.WriteLine(dic.ContainsKey("news3"));
Console.WriteLine(dic.Count);//个数
5使用循环先遍历键 再根据键获取值
foreach (var item in dic.Values)
{
Console.WriteLine(dic[item]+".............");
}
6清空集合
//dic.Clear();

《var定义变量》

定义整型和字符串类型可以使用指定关键字
int a = 10;
string b = "hello";

还可以在定义使用var进行定义 ,var可以接受任意类型的数据,var类型是根据赋值的时候确定类型
var c = 10;
var d = "ss";

dynamic 动态类型定义,也可以接受任意类型数据
dynamic name = "world";
dynamic age = 10;
Console.WriteLine(name);

dynamic和var区别
//1 var是没有类型的,只有在赋值完之后才确定类型,dynamic就是一个类型
//2 var 在定义时候 必须赋值
//3 使用dynamic时候 编码的时候没有对应的提示

var 使用的场景,在遍历数组的时候可以var接收数组元素
//foreach(var item in collection)
//{
//}
var dic = new Dictionary<string, int>();
Console.WriteLine(dic.Count);
/*强类型编程语言:定义一个数据 一旦确定数据的类型,这个数据不能再赋值成其它类型 好处:类型安全,坏处需要类型的转换
* C#强类型语法
*
*
* 弱类型编程语言:定义一个数据 一行的代码可以修改数据的类型 坏处:类型不安全,好处不需要类型的转换
* js弱类型

《类与对象》

类:就是一个定义了数据类型的蓝图(模板),如人类、鸟类、动物类、狗类、玩家类、怪物类...,一个类的创建实际上并没有定义任何的数据,它仅仅定义了一个类是什么、意味着什么、由什么东西组成、可执行什么操作...

对象:对象就是类的实例,由某一个类实打实的创建出来的一个实际拥有的产物,如:一个人、一只鸟、一只猫、一只金毛、玩家A、玩家B、哥布林、牛头怪

类成员:一个类中包含需要的信息(属性)和行为(方法),这些信息我们统称为类成员。类成员用于记录这个类的信息
如:人类应该拥有名字、性别、年龄等属性,应该拥有吃、喝、拉、撒、睡等方法

类和对象是面向对象编程语言的一大核心
类:是具有相同信息和行为的抽象的一个概念,某一类事物的总称
对象:是实实在在的个体,由类进行创建,是类的实例化。张三是People类的实例化对象

修饰符:就是类和属性,字段,方法使用的范围
一般类默认修饰符internal
字段的默认修饰符是private,主要是保证数据的安全性
属性一般定义public,主要是外部进行访问
方法一般定义成public'

public:允许类,属性,字段,方法在类的外部进行访问,
private 只能在本类里面访问
protected 不能在外部访问属性或者字段
internal :当前项目可以引用该类

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 10:27:57

HarmonyOS6新特性

鸿蒙 6 新特性 鸿蒙 6&#xff08;HarmonyOS 6 / HarmonyOS NEXT 相关版本&#xff09;在语言、UI 框架、多设备协同、AI、图形、多媒体以及工具链等方面都进行了大幅升级&#xff0c; 下面按特性维度逐一梳理&#xff0c;方便你直接作为设计 / 开发文档使用。 一、ArkTS 原生应…

作者头像 李华
网站建设 2026/6/15 3:49:13

volatile关键字的作用

1.禁止编译器对变量进行优化当一个变量在短时间内被多次访问时&#xff0c;编译器可能会将该变量的值缓存到寄存器中&#xff0c;后续对该变量的访问直接从寄存器中获取&#xff0c;而不再从内存中读取。但如果该变量的值可能会被意外改变&#xff08;如被硬件或其他线程修改&a…

作者头像 李华
网站建设 2026/6/14 16:20:54

Cursor 2.2更新:可视化编辑器+Debug Mode,写前端的有福了

加我进AI讨论学习群&#xff0c;公众号右下角“联系方式”文末有老金的 开源知识库地址全免费这两天Cursor连续放大招12月10日&#xff0c;Cursor发布了2.2版本&#xff0c;主打Debug Mode。12月11日&#xff0c;又发了个重磅更新&#xff1a;Browser可视化编辑器。说实话&…

作者头像 李华
网站建设 2026/6/15 10:31:25

别让AI Agent把你送进局子!开发者必看的法律合规避坑指南

随着企业降本增效需求的不断增强&#xff0c;以及供给端 AI 能力成熟度不断提高&#xff0c; 2026 年注定将成为企业部署及应用AI的爆发之年。其中&#xff0c;具备自主决策与跨系统协同能力的 AI Agent&#xff0c;正加速进入企业实际业务场景&#xff0c;将在生产力层面推动企…

作者头像 李华
网站建设 2026/6/15 6:49:42

程序综合实践第十二周-二叉树

1、二叉树求高度#include<bits/stdc.h> using namespace std; int n; const int N105; struct node{int left;int right;int data; }a[N]; int dfs(int r){if(r0)return 0;int h1dfs(a[r].left);int h2dfs(a[r].right);return max(h1,h2)1; } int main(){cin>>n;fo…

作者头像 李华