swift无法创建空init构造函数,如何给类变量赋予nil空值

2023-11-06

今天学swift的时候遇到一个问题,无法创建一个空的类对象。最主要的是,无法让对象的类变量为空。比如创建一个Person类,年龄age用Int属性,但是age默认是0,不是空值nil。以下代码给出了解决方案:

import Foundation

class Person {
    //element variables
    var country: String
    var firstName: String
    var lastName: String
    var age: Int?//if there's no value of age, age = nil
    
    //instructor
    init(country: String, firstName: String, lastName: String/*, age: Int*/) {
        self.country = country
        self.firstName = firstName
        self.lastName = lastName
        //self.age = age
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

swift无法创建空init构造函数,如何给类变量赋予nil空值 的相关文章

  • 使用 Xcode 6 XLIFF 导出的 iOS 本地化/国际化设置 Bungle

    背景 Xcode 6 添加了快速导出功能 可为每种语言创建单个 XLIFF 文件 只需从文件导航器中选择您的项目 然后选择菜单项编辑器 导出以进行本地化 Issue 它工作得非常好 并且 XML 中包含了所有内容 除了设置捆绑字符串 有人有
  • iPad 的自适应布局

    我正在关注这篇文章在 ios 中构建自适应布局为 iOS 8 构建自适应用户界面 http www sitepoint com building adaptive user interfaces ios 8 它在 iPhone 上运行良好
  • 在 Mobile Safari 中点击

    敲击
  • 如何在flutter插件中调试iOS原生代码?

    我想知道如何在插件中调试 flutter iOS 代码 我可以打开每当您创建插件时生成的示例应用程序 但我将插件代码视为二进制框架 因此我无法调试它 对于 android 这相当简单 我只需打开 A S 中的 android 文件夹即可 插
  • 使用离子框架的语音识别

    我正在寻找一种使用离子框架进行语音识别的方法 我想在 ios 和 android 设备上运行一个应用程序 目前 我在 ios 和 android 中提供网络视图 并有一个通用的代码库 我想为其添加语音识别功能并获取语音的输出 如果您在 Go
  • 如何在 UIImagePickerController 捕获图像的瞬间获取当前位置?

    我研究了如何从返回的图像中获取位置数据UIImagePickerController相机 但是 我认为最简单的方法是获取当前位置CLLocationManager此刻UIImagePickerController捕获图像 有办法做到这一点吗
  • 更改从 xib 加载的 UITableViewHeaderFooterView 上的背景颜色表示使用 contentView.backgroundColor

    I m 从 xib 文件创建 UITableViewHeaderFooterView https stackoverflow com a 20073742 35690 几乎一切都工作正常 问题是 现在当我尝试更改背景颜色 或者如果我在 xi
  • 如何在 Objective-C 的动画中使视图振动? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我有一个名为 qShake 的 UIView 当用户犯错误时 我希望该视图在一个小空间内短时间内从左到右晃动 我将如何创建动画来做到这一点
  • NSString 到 TimeInterval

    我有一个 NSString 的格式00 00 00 00最初获得自 dateFormatter setDateFormat HH mm ss SS 我如何获取该字符串并将其转换为 TimeInterval 如果您 100 绝对肯定这种格式永
  • 如何获取 UIImage 的大小(以 KB 为单位)?

    有没有办法从 UIImage 获取以 KB 为单位的文件大小 而不从 didFinishPickingMediaWithInfo 获取该图像 所呈现的图像来自相册 我尝试了以下代码 但这给出了以下结果 图像大小 KB 0 000000 vo
  • iPhone Objective-C 以编程方式将范围按钮添加到 UISearchBar

    我目前这段代码用于创建 UISearchBar 改编自之前的 stackoverflow 示例 UISearchBar searchBar UISearchBar alloc initWithFrame CGRectZero searchB
  • CSS 背景在 iOS 中拉伸以填充高度,但滚动上有空白

    这个 CSS 让我的背景在 iOS 中填充 100 的屏幕高度 但有一个小问题 当你向下滚动时 最初有空白 然后当你松开手指并停止滚动时 背景图像会 调整 并填充 100再次屏幕高度的 如果您继续滚动 该问题不会在同一页面上再次出现 只是第
  • iOS 11 /“Apps-prefs=root”功能在更新到 Swift 3 后不起作用

    我对 Swift 编程还很陌生 我制作了一个简单的测试应用程序 可以通过特定按钮以编程方式打开设置 不幸的是 更新按钮后 没有打开所需的设置页面 在本例中为 wifi 页面 而是仅打开通用设置屏幕 有人可以帮助我了解 swift 4 中究竟
  • Crashlytics 和答案套件的问题

    我在我的应用程序中使用 Crashlytics 来跟踪崩溃 并使用 Answers 工具包来处理自定义事件 我正在使用 pod 文件将框架集成到我的项目中 但是在添加两个 pod 时出现链接错误 pod Fabric pod Answers
  • Sqlite3 查询在 iOS 8.2 下变得非常慢

    我制作了一个可以在应用程序内使用 sqlite 数据库的应用程序 在 iOS 8 2 之前 它工作得很好 但更新后 查询方法的工作速度慢了大约 100 倍 我试图查找有关此问题的信息 但尚未找到任何信息 有人有同样的经历吗 这是我的方法 到
  • NSXMLParser 解析使用 Windows-1256 编码的 xml 文件

    我想解析 Windows 1256 编码的 rss 文件 但解析器没有读取它 我用 UTF8 编码做了很多解析 但只有这个不起作用 为什么 带有 Windows 1256 的 rss 文件 http youm7 com Rss asp 解决
  • iOS 框架问题:类在两者中均实现

    我正在开发一个使用第三方框架类的iOS框架项目 所以我在下面添加了第三方框架链接的框架和库部分 当我在 iOS 应用程序项目中添加自定义框架时 每个类都会收到此警告 objc 3139 类 class name 在两者中均实现 privat
  • Measure 应用程序是否有可用的 URL 方案?

    我想推出新的测量应用程序 在 iOS 12 上 在我的应用程序中 这可能吗 应用程序是否有可用的 URL 方案可用于此目的 或者还有其他方法可以做到吗 Thanks 您似乎无法打开此应用程序 In the 文档存档 https develo
  • 通过更改其优先级值来动画布局约束

    我有一个包含大量文本的标签 有一个用于折叠和展开标签高度的切换开关 此处名为 里拉套房 所以它会截断文本的结尾 我精心设置了垂直内容拥抱优先级和压缩阻力 因此内在尺寸比压缩阻力具有更高的优先级 高度限制 直接位于标签右侧的可选约束 设置为常
  • 在 IBAction 中调用其他函数之前,如何使函数完成?

    我无法理解完成处理程序 我有一个 textFieldEditingDidChange IBAction 首先调用verify 文本字段输入上的函数然后是 if 语句在 apply 返回的布尔值上 问题是 if 语句在 verify 完成之前

随机推荐

  • 激光散斑成像

    激光散斑成像系统原理 当激光照射在足够粗糙 表面的高度变化大于激光的波长 的组织表面 组织表面的散射粒子会使入射光发生背向散射 由于不同散射光到达相机成像面的光程差不同 不同散射光之间会在像面上形成随机干涉现象 在空间分布上表现为明暗变化的
  • linux下查看进程的线程运行情况

    1 首先查看进程的PID 2 查看所在 进程的线程运行情况 top H p 5066
  • vue2 vue-amap plugin ControlBar插件使用和高德3D效果

    网络上有不少vue amap的插件使用教程 我看了许多都没有适用的 要高德3D效果必须用到ControlBar插件 核心是viewMode的开启和ControlBar插件的配置 以下是我试出来的使用方法 在main js中配置全局vue a
  • 基于89C51单片机的智能小车——06.测速小车

    测速模块 用途 广泛用于电机转速检测 脉冲计数 位置限位等 接线 VCC 接电源正极3 3 5V GND 接电源负极 DO TTL开关信号输出 AO 此模块不起作用 测试原理和单位换算 轮子走一圈 经过一个周长 C 2x3 14x半径 3
  • 5. 数学导论 - 图论(图的概念)

    文章目录 图论 Hi 大家好 我是茶桁 今天这节课呢 内容非常的少 少到你可能会认为我偷懒了 还真不是 因为就目前基础来说 图论这一节尚且没有太多可讲的东西 重点是带大家混个脸熟 那么多高强度内容之后 就当给自己放个假吧 图论 前面说过 这
  • 19.学习Camera之——相机驱动层–V4L2框架解析

    相机驱动层 V4L2框架解析 一 概览 相机驱动层位于HAL Moudle与硬件层之间 借助linux内核驱动框架 以文件节点的方式暴露接口给 用户空间 让HAL Module通过标准的文件访问接口 从而能够将请求顺利地下发到内核中 而在内
  • hdu 1827(tarjan)

    先用tarjan缩点 然后入度为0的点就是必须要选择点同时也是最小的情况 Summer Holiday Time Limit 10000 1000 MS Java Others Memory Limit 32768 32768 K Java
  • flowable 多数据源

    目录 前言 一 多数据源 二 测试 1 测试接口 1 不带事务 2 加上事务 三 解决方法 1 开启新事物 2 重写事务 总结 前言 在springboot中使用flowable 此时flowable默认使用spring中的数据源 我这里f
  • ERP常用词汇中英文对照

    ERP常用词汇中英文对照 2007年10月24日 星期三 15 23 A gt gt ABC Classification ABC分类法 对于库存的所有物料 按照全年货币价值从大到小排序 然后划分为三大类 分别称为A类 B类和C类 A类物料
  • Fastjson 全局日期序列化设置导致 JSONField 无效(Java)

    Fastjson 全局日期序列化设置导致 JSONField 无效 Java 在 Java 开发中 Fastjson 是一个流行的 JSON 处理库 它提供了强大的功能和灵活性 其中一个常见的需求是将 Java 对象序列化为 JSON 字符
  • linux文件时间戳(atime, mtime, ctime)

    简介 在linux系统创建一个文件后 使用stat lt 文件名 gt 命令行查看文件状态 总是能看到 3 个时间戳 如下图所示 从上图可以看到 touch命令创建文件abc后 使用 stat abc命令行查看abc文件的状态 显示了3个时
  • 常用命令行指令

    文章目录 1 快速重命名多份文件 2 将mkv文件转为MP4 3 cd命令 4 pip常用命令 5 常用命令大全 1 快速重命名多份文件 在想要修改的文件夹下方 按住shift键 右击鼠标 打开PowerShell ls mp4 mv De
  • 由于找不到MSVCR120.dll,无法继续执行代码,重新安装程序可能会解决此问题。

    今天安装mysql的时候遇到了一个bug 如下图所示 这是因为没有安装如下软件导致的 点击如下链接 下载vcredist 下载 vcredist 地址 https www microsoft com zh CN download detai
  • NS3初探

    NS3初探 文章目录 NS3初探 一 简介 二 NS3重要概念 1 节点 Node类 2 信道 Channel类 3 网络设备 NetDevice类 4 应用程序 Application类 5 拓扑帮助 topology helper 6
  • CAM,PradCAM,layer CAM(可解释性分析方法)

    目录 1 CAM 1 1作用 1 2应用实例 1 3CAM的特点 1 4CAM的思路 1 5CAM的缺点 2 GradCAM 2 1和GAM的区别及思路 2 2应用面 2 3一个延深 解决模型偏见 2 4缺点 3 Grad CAM 4 Sc
  • R语言基于R6的面向对象编程

    R的极客理想系列文章 涵盖了R的思想 使用 工具 创新等的一系列要点 以我个人的学习和体验去诠释R的强大 R语言作为统计学一门语言 一直在小众领域闪耀着光芒 直到大数据的爆发 R语言变成了一门炙手可热的数据分析的利器 随着越来越多的工程背景
  • 在Altium Designer设计时候出现的Unknown Pin:Pin XX问题

    之前在布线时候发现一个元器件没有而且一直提示不知道引脚 以为是网络标号没有弄 后来看了一下网络标号也有 然后系统还是提示不知道该引脚 如图所示 然后就按照网上方法把全部网络标号删去了 重新弄也没有用 原理图也检查了一遍 这个元器件的原理图也
  • 华为首席开源联络官任旭东:深耕基础软件开源,协同打造数字世界根技术

    整理 巫柔颖 开源是迄今为止最先进 最广泛 最活跃的协同创新模式 通过汇聚创新资源 构建信任环境 促进知识 智慧 技术 成果等的共享 加速创新要素高效流动 产生更大价值 已经成为软件技术升级和产业发展的主要模式 是推动科技创新的核心动力与重
  • scala集合和java集合的转换-List

    scala集合和java集合的转换 List scala的List要想转换成java的list 需要导入对应的类scala collection JavaConverters import java lang util import com
  • swift无法创建空init构造函数,如何给类变量赋予nil空值

    今天学swift的时候遇到一个问题 无法创建一个空的类对象 最主要的是 无法让对象的类变量为空 比如创建一个Person类 年龄age用Int属性 但是age默认是0 不是空值nil 以下代码给出了解决方案 import Foundatio