草庐IT

non-nullable

全部标签

final var 和 non-final var 之间的快速区别 |最终让和非最终让

final变量和非final变量的区别:varsomeVar=5finalvarsomeFinalVar=5和letsomeLet=5finalletsomeFinalLet=5 最佳答案 final修饰符在SwiftLanguageReference中描述。,它说finalApplythismodifiertoaclassortoaproperty,method,orsubscriptmemberofaclass.It’sappliedtoaclasstoindicatethattheclasscan’tbesubclassed.

ios - Firebase、Swift : Conflicting nullability specifier on return types, 'nullable' 与现有说明符 'nonnull' 冲突

Firebase3.6.0中的警告。Xcode8-Swift3。这些是Firebase类:-@classFIROptions@classFIRAuthCredential@classFIRUserProfileChangeRequest警告信息:(nullableinstancetype)initNS_UNAVAILABLE;认为这可能是一个错误!。但如果没有,有什么解决办法吗? 最佳答案 原始答案:从最新的Firebase(3.7.1)开始,这个问题已为我解决。只需执行“podupdateFirebase”,然后清理您的项目(确保

swift - "Cannot inherit from non-open class" swift

从Xcode8beta6开始,我现在在其定义模块之外收到编译错误“无法从非开放类(Class)继承”我继承的类是单独的Swift框架的一部分,但我的项目是为Xcode8beta5编译的。我需要更改什么才能让我的项目再次编译? 最佳答案 我自己找到了答案。在Swift3中,您现在可以将类标记为open而不是public这允许模块外部的文件子类化该类。只需将模块类中的public替换为open。引用here. 关于swift-"Cannotinheritfromnon-openclass"s

swift - Swift 中的 'non-nominal type' 是什么?

我在尝试扩展诸如(Int,Int)或Any之类的非正统“类型”时看到此错误:Non-nominaltype'Any'cannotbeextended那么什么使类型成为非标称类型呢?像Any或(Int)这样的非标称类型和像Int这样的常规标称类型有什么区别? 最佳答案 currentlyacceptedanswer不正确;实际答案来自Swift类型系统的一个深奥的部分。Swift中的大多数类型都是标称类型——它们是作为用户代码的一部分在特定模块中声明的“命名”类型。Int和Array等看似原始的类型实际上是Swift模块中定义的结构,

Swift 协议(protocol)错误 : 'weak' cannot be applied to non-class type

Protocols和class-boundProtocols有什么区别,我们应该在Swift中使用哪一个?protocolA:class{...}protocolA{...}当协议(protocol)未定义为:class时尝试添加weak委托(delegate)时出现错误:protocolA{...}weakvardelegate:A给出错误:'weak'cannotbeappliedtonon-classtype或'weak'mustnotbeappliedtonon-class-bound'A';consideraddingaprotocolconformancethathasac

types - 为什么 Swift 语言指南建议使用 Int "even when values are known to be non-negative"?

这是一个关于Swift编程风格的问题,特别是Int与UInt。Swift编程语言指南建议程序员使用通用的有符号整数类型Int,即使已知变量是非负数。来自theguide:UseUIntonlywhenyouspecificallyneedanunsignedintegertypewiththesamesizeastheplatform’snativewordsize.Ifthisisnotthecase,Intispreferred,evenwhenthevaluestobestoredareknowntobenon-negative.AconsistentuseofIntforint

c# - 为什么 as 运算符可以与 Nullable<T> 一起使用?

根据asoperator的文档,as“用于在兼容的引用类型之间执行某些类型的转换”。自可空isactuallyavaluetype,我希望as不能使用它。但是,此代码编译并运行:objecto=7;inti=oasint???-1;Console.WriteLine(i);//output:7这是正确的行为吗?as的文档有误吗?我错过了什么吗? 最佳答案 Isthiscorrectbehavior?是的。Isthedocumentationforaswrong?是的。我已通知文档管理员。感谢您提请我注意此事,并对错误表示歉意。显然,

c# - 条件运算符? : with Nullable type Casting

在MSDN文档中,以下两个片段是相同的:boolvalue;intx=(value)?0:1;和boolvalue;intx;if(value)x=0;elsex=1;太棒了,太棒了。我用它所有的时间。简洁有效。如果我们尝试使用可空类型,如下所示:int?x=(value.HasValue)?value.Value:null;我们得到一个编译时错误:Thetypeofconditionalexpressioncannotbedeterminedbecausethereisnoimplicitconversionbetween'{NullableType}'andnull.这编译得很好:

c# - 获取 C# 字符串的 NON FIRST 段的快速而巧妙的方法

我对一个字符串执行split(''),我想提取返回字符串的第一个元素以获得字符串的其余部分。f.e.“这是一个了不起的字符串”.split('');我想得到除THIS之外的所有单词。这是:是一个惊人的字符串字符串在第一个和第二个单词之间总是至少有一个空格,因为我会把它硬编码是否有实现此功能的功能?谢谢 最佳答案 尝试stringX="THISISANAMAZINGSTRING";stringY=(X.IndexOf("")根据评论(IFX保证是至少有一个空格的有效字符串)没有检查等的更简单版本:stringY=X.Substring

c# - 在三元运算中将 null/Nullable 分配给 DateTime

我有这样的声明DateTime?dt=(string1==string2)?null;(DateTime)(txtbox.Text);我无法编译。原因是:null不能分配给DateTime.所以,我必须声明一个Nullablenullable变量并替换null与nullable.我不想使用if-语句,我想在一行中执行此操作。此外,我可以使用运算符??吗?在这里。 最佳答案 DateTime?dt=(string1==string2)?(DateTime?)null:DateTime.Parse(txtbox.Text);