NSDictionary NSMutableDictionary的相关API总结

iOS校招笔试核心考点解析:从基础语法到内存管理与Runtime 在移动开发技术迭代加速的今天,iOS开发者不仅需要熟练使用Swift或Objective-C编写业务代码,更需深入理解底层原理,才能从容应对大厂面试与复杂工程问题。以Objective-C语言特性为基础,内存管理中的ARC与weak表机制、Runtime的消息转发与Method Swizzling、多线程编程中的GCD死锁与数据竞争,共同构成iOS进阶的核心知识体系。理解这些原理,不仅有助于破解面试中关于循环引用、KVO底层实现、block捕获变量等高频难题,更能在实际开发中指导解决内存泄漏、页面卡顿、接口 阅读详情

        
//字典:用来存储具有一一对应关系的数据.
        
//一个key对应一个value key起到了唯一标识作用, key必须是唯一的, 但是一个value可以对应多个key
        
//存储的对象是无序的, 一对键值对组成了字典中的一个元素
        
//NSDictionary
        
/*
        //1.
创建对象
        NSDictionary * dic = [[NSDictionary alloc] initWithObjectsAndKeys:@"lili", @"name", @"18", @"age", @"6222222", @"phone", @"
男", @"sex", nil];
        NSLog(@"%@", dic);
        NSDictionary * dic1 = [NSDictionary dictionaryWithObjectsAndKeys:@"
放弃", @"abandon",@"一个", @"a", @"下标", @"index",  nil];
        NSLog(@"%@", dic1);
        //2.
求字典的元素个数
        NSInteger count0 = [dic count];
        NSInteger count1 = [dic1 count];
        NSLog(@"%lu", count0);
        NSLog(@"%lu", count1);
        //3.
获取所有的key
        NSArray * keys = [dic allKeys];
        NSLog(@"%@", keys);
        //4.
根据key获取对应的value
        NSString * value = [dic objectForKey:@"name"];
        NSLog(@"value = %@", value);
        //5.
字典遍历
        //
字典遍历获得到key 然后根据key在获得相应的value
        for (NSString * key in dic) {
            NSString * value1 = [dic objectForKey:key];
            NSLog(@"!!!!!value1 = %@", value1);
        }
        //NSMutableDictionary
        //1.
创建可变字典
        NSMutableDictionary * mDic =  [NSMutableDictionary dictionaryWithObjectsAndKeys:@"lili", @"name", @"18", @"age", @"6222222", @"phone", @"
男", @"sex", nil];
        //2.
往字典中添加元素
        [mDic setObject:@"25" forKey:@"number"];
        NSLog(@"%@", mDic);
        //3.
修改key对应的value
        [mDic setObject:@"22" forKey:@"age"];
        NSLog(@"3333%@", mDic);
        //4.
移除
        [mDic removeObjectForKey:@"phone"];
        NSLog(@"4444%@", mDic);
探索niri:让你的Linux桌面布局无拘无束 niri是一款基于Wayland的滚动平铺合成器,采用创新的窗口管理方式。它将窗口排列为向右无限延伸的条目,支持独立显示器布局和动态垂直工作区,确保多任务操作流畅性。核心功能包括概要视图、截图界面、屏幕投射、手势操作、窗口分组等,并支持自定义布局和动画效果。niri具备良好的稳定性,兼容xwayland-satellite工具,灵感来自PaperWM但突破了GNOME限制。该项目为追求高效桌面管理的用户提供了全新解决方案,欢迎加入社区交流体验。 阅读详情

相关推荐

第一章 Cheat Enginee(CE)使用指南

Cheat Engine核心功能详细说明(以植物大战僵尸为例) 教你修改单机游戏。

m0_74545731的博客 1万+

目前最细致清晰的NSDictionary以及NSMutableDictionary用法总结

做过Java语言 或者 C语言 开发的朋友应该很清楚 关键字map 吧,它可以将数据以键值对儿的形式储存起来,取值的时候通过KEY就可以直接拿到对应的值,非常方便。在Objective-C语言中 词典对象就是做这个事情的,不过在同一个词典对象中可以保存多个不同类型的数据,不像Java与C 只能保存声明的相同类型的数据,它的关键字为NSDictionary与NSMutableDictionary。阅...

weixin_34233679的博客 272

Oracle11g安装教程、配置实例、监听、客户端程序详解_Windows篇

Oracle11g安装教程、配置实例、监听、客户端程序详解_Windows篇 文章目录Oracle11g安装教程、配置实例、监听、客户端程序详解_Windows篇前言一、数据库的安装前准备,前提是没有安装过!!!二、仅安装数据库软件(数据库运行环境)三、添加数据库实例四、设置监听程序,让数据库可以通过网络访问五、为目标数据库设置网名总结 前言 如果需要安装包:联系我看到会给你链接,因为现在官网已经不提供10g,11g的安装包了,在网盘保存望悉知(回复不会很及时,下班看到会回复敬请谅解)。 提示:以下

zhx__的博客 5631

Objective-C中的NSDictionary、NSMutableDictionary详解

——–NSDictionary——– C++/STL中有一种容器叫做map,OC中的NSDictionary与map很类似,是一个拥有键值对的类/数据结构。这个键值对的要求是键必须遵守NSCopying协议(NSString就遵守这个协议),值需要满足是OC对象。NSDictionary的元素不可变,而NSMutableDictionary中元素可变。 1). 创建方法 ...

Huiqiang Yu的博客 4304

避坑指南:Unity新版InputSystem在移动端的5个常见问题及解决方案

本文针对Unity新版InputSystem在移动端开发中的常见问题,提供了5个关键解决方案,包括虚拟摇杆灵敏度调节、多点触控冲突处理、按钮反馈延迟优化、手势识别与陀螺仪数据融合以及Android/iOS平台差异处理。这些实战经验帮助开发者高效解决触控适配难题,提升移动游戏体验。

soda5的博客 405

arduino uno spi驱动12864

arduino uno spi驱动12864

yvee的博客 2060

NSDictionary&NSMutableDictionary常用操作梳理

NSDictionary&NSMutableDictionary也是继数组和字符串外高频使用的OC基本操作类,今天抽空将OC字典类常用操作稍作整理,以便需要时能条件反射信手拈来,避免需要某个utility时,因为不知系统已经提供而陷入造轮子的尴尬。

曾梦想仗剑走天涯 1万+

微信抢红包神器自动抢软件

微信抢红包神器自动抢软件

weixin_44006731的博客 8081

[iphone] NSDictionary / NSMutableDictionary 及 NSArray / NSmutableArray (实例)

Dictionary使用类方法 dictionaryWithObjectAndKeys: 来创建字典;使用方法objectForKey: 来获取字典中的值。 [code="java"] NSDictionary *dict = [NSDictionary dictionaryWithObjectAndKeys:@"just",@"firstname",

{丸の子} 64

CARLA 0.9.15从零开始:环境搭建与基础场景实战指南

本文是CARLA 0.9.15从零开始的完整环境搭建与基础运行教程。详细介绍了在Linux系统下配置Python环境、下载安装CARLA核心软件包、启动服务器以及运行第一个基础场景的步骤。重点演示了如何通过Python客户端脚本生成随机车流,并手动控制EGO车辆在仿真城市中行驶,为自动驾驶算法开发构建了坚实的仿真测试基础。

weixin_29053383的博客 779

AI赋能数字人:打造与语音节奏完美匹配的高质量手势动画

想象一个场景:当你与一位数字人交谈时,它不仅能理解你的言语,还能恰到好处地挥动手臂、比划手势,就像真实的人类交流一样自然流畅。这正是当前AI技术致力于实现的目标——通过分析语音内容,自动生成与之相匹配的手势动作,为数字人赋予更加丰富的情感表达和非言语沟通能力。AI手势生成技术的出现,标志着数字人在模仿人类自然交流方式上迈出了重要一步。随着技术的不断成熟与应用场景的拓宽,未来我们可以期待更多富有表现力和情感互动的数字人出现在我们的日常生活中,开启人机交互的新篇章。

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 794

NSDictionary等基本类型的使用方法

2)NSNullNSNull大概是Cocoa里最简单的类了,只有一个方法+ (NSNull *) null;可以这样添加到集合中[contact setObject: [NSNull null]forKey: @"home fax machine"];访问时:id homefax;homefax = [contact objectForKey: @"ho...

weixin_33752045的博客 372

基于YOLOv10的机器人抓取引导系统:从物体检测到精准抓取

python# 数据标注工具简化版import os"""启动标注工具""""""标注单张图像"""print(f"标注图像: {os.path.basename(img_path)}")print("请在图像上绘制抓取矩形框...")# 这里应该实现交互式标注界面# 简化版本直接返回示例标注# 示例标注数据"""保存标注结果"""# 保存为YOLO格式# 转换为YOLO格式。

YOLO 378

OpenArm 采购攻略:96 万日元 BOM 预算怎么花,定制件怎么省钱

我按官方 BOM 自己走过一遍 OpenArm v0.1 的采购流程。先说结论:整套料清单总价 ¥960,438(日元,约 6,500 美元),电机占 41%、机加定制件占 40%、标准件加电子件占剩下的 20%。能省和容易踩坑的地方非常集中:定制件走预注册型号下单,标准小件凑单一次买齐。以下都是对着仓库里的 BOM 表核出来的下单逻辑。 [![OpenArm 双臂机械臂渲染图与 BOM 成本约

gitblog_00853的博客 181

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

Objective-C底层原理:从消息发送到运行时API实战

在面向对象编程中,消息传递机制是实现对象间通信的核心范式。Objective-C作为一门动态语言,其消息发送机制在运行时而非编译时进行方法绑定,这赋予了它强大的灵活性和动态性。理解这一原理对于掌握iOS/macOS开发至关重要,它能帮助开发者编写更健壮、高效的代码,并应对复杂场景。通过运行时(Runtime)API,开发者可以动态地查询、修改类与对象的结构,实现诸如方法交换(Method Swizzling)、动态添加方法等高级特性。这些技术广泛应用于AOP编程、热修复、JSON模型自动转换等场景。本文以O

weixin_34218890的博客 332

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

OC中Foundation框架知识总结

一个框架(Framework)就是一个软件包,它包含多个类。Mac 操作系统提供了几十个框架,从而帮助软件开发人员迅速地在Mac 系统上开发应用程序。在这些框架中,有一 些称为基础框架。基础框架就是为了所有程序开发提供基础的框架,其中的类包括:字符串(NSString)、数字(NSNumber)、数组(NSArray)、字典(NSDictionary)、 集合(NSSet)等,所有的基础框架上

why_not_的专栏 760

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ios学习记录 day21 OC 6

NSString 字符串 使用API : 1.NS开头 是基本类 2.看父类是什么 3.看有没有自己的初始化方法或构造器(Tasks列表 标记红色的就是不用的) //1.创建方法 //初始化方法 (alloc init) //构造器 (类调用) //2.追加方法(字符串的拼接) append 方法名stringByappendingWithFormat...

diaoxian5386的博客 106

Infer 静态分析实战:NIL_INSERTION_INTO_COLLECTION——Objective-C 集合 nil 插入崩溃的检测与修复指南

本文基于 Infer 的官方 Issue 文档 [NIL_INSERTION_INTO_COLLECTION.md](https://link.gitcode.com/i/ca74532fa847be7d34861ddddf1b48e1),深入讲解 Infer 如何检测 Objective-C 代码中把 `nil` 传入集合(数组、字典、集合)所导致的运行时崩溃,并结合作息仓库内的 Pulse 分

gitblog_01050的博客 159

Apollo-CustomApiCredentials性能优化:提升Reddit客户端响应速度的5个技巧

想要让Apollo Reddit客户端运行更流畅吗?Apollo-CustomApiCredentials项目通过自定义API凭证,为您提供终极性能优化方案。这款开源工具让您能够使用自己的Reddit和Imgur API凭证,从而绕过官方限制,显著提升Apollo客户端的响应速度和稳定性。在本文中,我将分享5个实用技巧,帮助您最大化Apollo-CustomApiCredentials的性能优势。

gitblog_00554的博客 463

JSPatchX插件架构深度解析:理解Objective-C与JavaScript桥接原理

JSPatchX是一个为Xcode开发者提供JSPatch自动补全功能的强大插件,它通过巧妙的架构设计实现了Objective-C与JavaScript之间的智能桥接。这个插件不仅提高了开发效率,更展示了跨语言编程的深度原理。本文将深入解析JSPatchX的架构设计,帮助开发者理解Objective-C与JavaScript桥接的核心机制。 ## JSPatchX插件架构概述 🏗️ JSPa

gitblog_00200的博客 975

MWFeedParser技术深度解析:构建高性能iOS内容聚合应用的最佳实践

在移动应用开发领域,内容聚合功能已成为提升用户粘性的关键技术。然而,iOS开发者面临RSS/Atom Feed解析的复杂挑战:XML解析效率低下、网络请求阻塞主线程、HTML内容处理繁琐。MWFeedParser作为一款专为iOS设计的Objective-C RSS/Atom解析框架,通过简洁的API设计和高效的底层实现,为开发者提供了完整的解决方案。 ## 🔧 架构设计与核心原理 MWFe

gitblog_00220的博客 718

初级篇第二期:Obejct-C基础

学习建议:请参考苹果官方API来做相应的学习学习周期:1周学习目的:了解Obejct-C中最常用的几种数据类型学习答疑:欢迎来技术群里提问并做分享学习工具:Xcode开发环境学习内容:我们会在下面列出在iOS开发中最常用几种数据类型及相关方法关于Xcode创建项目基本流程如下图所示并在viewDidLoad方法里面的下方空白处敲下文出现的代码NSString:字符串 ...

weixin_34343689的博客 218

OC与JavaScript互调实践:构建轻量级macOS混合应用

在现代应用开发中,混合开发技术通过结合Web技术的灵活性与原生系统的底层能力,为开发者提供了独特的解决方案。其核心原理在于建立Web视图(如WKWebView)与原生代码之间的双向通信桥梁,实现JavaScript与Objective-C/Swift的安全、高效互调。这项技术的核心价值在于突破纯Web环境的沙箱限制,让Web前端能够安全可控地访问文件系统、硬件接口等原生能力,同时保持Web UI的敏捷开发与跨平台潜力。在应用场景上,它特别适合开发macOS平台的效率工具、创意软件等需要轻量级部署且功能强大的

weixin_34050005的博客 331

RMStore核心组件揭秘:Blocks与Notifications如何简化StoreKit开发

想要在iOS应用中集成应用内购买功能?😊 面对复杂的StoreKit API,你是否曾感到困惑和不知所措?今天,我们将深入探索RMStore这个轻量级iOS库,揭秘它的两大核心组件——Blocks和Notifications,看看它们是如何将StoreKit开发从繁琐变为简单的! RMStore是一个专门为iOS应用内购买设计的轻量级库,它通过Blocks和Notifications两大核心机

gitblog_01063的博客 209

斯坦福iOS7公开课-Lesson1-4知识点小结(自用)

呐,顺一顺笔记本上的东西,白胡子大叔的一堂课信息量有点大的说;另外,主要是自己看的,所以…乱就不管我的事儿啦╮(╯▽╰)╭ …所以,正确的打开方式是Command+F。 Lesson1 MVC模式 slides上有两张图,把它们的关系说得很明白。不过我觉得MVC是一种说起来比较简单理解起来也很容易、但是真正上手做却是教科书习题般的难啊。 Views do not own data t

157

从Objective-C运行时到AOP实践:Aspects库如何优雅解决iOS横切关注点

在iOS开发中,当我们需要为多个模块添加统一的日志记录、性能监控或权限检查时,传统面向对象编程往往会面临代码重复和模块耦合的困境。Aspects库通过巧妙的Objective-C运行时机制,提供了一种优雅的解决方案——面向切面编程(AOP),让开发者能够在不修改原始代码的情况下,为现有方法动态添加横切逻辑。 ## 运行时Hook的底层实现原理 Aspects的核心在于利用Objective-C

gitblog_00056的博客 436
上一篇: //总结:数组,字典,集合的相同点和不同点
下一篇: 取10个随机数, 每个数的取值范围是20-25, 找出其中重复的数, 重复次数
WMMBK
博客等级 码龄12年 1粉丝 20原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值