- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 Kotlin 新手。我发现这是一种奇怪的做法。
以arrayOf
为例/mutableListOf
,本能是尝试使用构造函数构造其中一种类型,即 new Array<T>(...args)
。或者甚至是静态工厂方法,例如 LocalDateTime.of(...)
。
为什么不是 new Array<T>()
使用过,或者至少是一个作用域函数,即 Array.of
。这些方法是否也会使全局范围变得困惑?
最佳答案
arrayOf
和 mutableListOf
不在“全局范围”内(这甚至不存在)。它们分别位于 kotlin
和 kotlin.collections
包中。
碰巧 kotlin.*
和 kotlin.collections.*
是任何 kotlin 文件的默认导入,因此您不必自己进行导入。请参阅Default Imports .
这与 Java 类似,默认情况下会导入 java.lang.*
,您无需指定它。
此外,您不能“构造” arrayOf 和 mutableListOf 因为它们不是类型;它们是方法 - 事实上,它们以小写字母开头是表明这一点的标准方式 - 类型以大写字母开头。
Kotlin 允许在类外部使用包级别的方法(尽管当为 JVM 编译时,它们将位于类内部),但这与 Java 中的 import static
没有太大区别,您可以使用 Java 中的 import static 来实现。从没有类名作为前缀的类访问静态方法。
关于java - 为什么 Kotlin 使用 arrayOf 这样的全局函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55072947/
我正在使用 spread operator ,当我注意到一些奇怪的事情时: // compiles val list1 = listOf(1, 2, *(if(0 > 1) arrayOf(3) el
假设我们有一个 Java 注释,如下所示: @Target(ElementType.METHOD) @Retention(RetentionPolicy.RUNTIME) @Documented pu
我创建了一个 WCF 服务,它定义了多个操作契约(Contract)。我的一个合约返回一组已知类型。该类型单独定义为数据协定。 当集合被 序列化时DataContractSerializer xml
我正在将代码从 Swift 2 迁移到 Swift 4。以下代码在 Swift 2 中运行良好,但在 Swift 4 中出错: let unorderedComments = try? json.ar
我正在序列化对象列表 List, XmlSerializer 生成 属性,我想重命名它或删除它。 可以通过创建将 List 封装为字段的新类来完成吗? [XmlRoot("Container")]
空数组 [] 传递以下 PropTypes 定义,即使我们声明字符串元素是强制性的。 { a: React.PropTypes.arrayOf( React.PropTypes
我是 Kotlin 新手。我发现这是一种奇怪的做法。 以arrayOf为例/mutableListOf ,本能是尝试使用构造函数构造其中一种类型,即 new Array(...args) 。或者甚至是
我有一个返回 PackageItemField 集合的 WebMethod: [WebMethod] public List GetAvailablePackges() { ..
ASP.net Web方法: [WebMethod()] public Data.Subtitle[] GetAll() { return Data.Subtitle.FindAll(); }
我真的是 .NET 编码的新手。我一直在尝试创建一个休息网络服务。 代码如下: namespace RestService { [ServiceContract] public cla
我在反序列化 WCF 网络服务的结果时遇到问题。该方法返回 List ,它被序列化为 XML,如下所示。当我尝试反序列化时,我只是得到一个异常,如下所示。看来我无法反序列化 至 List .注意 Re
考虑一下: import PropTypes from 'prop-types'; [...] Component.propTypes = { someProp: PropTypes.array,
我正在尝试使用 .NET 4.0 和 WCF 创建 REST Web 服务。我的 REST 服务正在返回一个列表,然后将其序列化为 XML。我遇到的问题是返回的 XML 以我不喜欢的 ArrayOf
这是我的 wcf 休息服务中的一种方法: [OperationContract] [WebInvoke(UriTemplate = "getInvoices", Method = "P
如何生成List而不是ArrayOf {Type}? 例如方法返回 [WebMethod] public List GetSimple() WSDL2Java将生成: public ru.test.w
我试图在 arrayOf() 中嵌套 oneOf() 一个 shape() 列表,但出现错误。 Warning: Failed prop type: Invalid prop tabs[0] of v
我创建了一个包含对象数组的 Moo 类,使用 Types::Standard 对类型进行检查我想验证我是否将正确的对象放入该数组,而无需过多硬编码。这是我现在拥有的示例: package MyClas
我正在使用 cxf wsdl2java 命令行命令来生成客户端(java 文件)。我的 xsd 看起来像这样 -
我创建了一个包含对象数组的 Moo 类,使用 Types::Standard 对类型进行检查我想验证我是否将正确的对象放入该数组,而无需过多硬编码。这是我现在拥有的示例: package MyClas
我正在关注 dan abramov 的 redux 教程,代码非常简单: import { schema, arrayOf } from 'normalizr'; export const todo
我是一名优秀的程序员,十分优秀!