immutability 相关问题

不可变性是指在创建数据后无法修改数据。而是通过复制数据进行修改。不可变数据的属性是*引用透明*。

当 Spark 中的数据帧转换为新的数据帧时,会发生什么?

我是 Apache Spark 的初学者。我在学习 Spark 时遇到了困难。据我所知,Spark基于惰性求值工作,并且Spark中的数据帧是不可变的。 我有一个数据框 df 为 3

回答 1 投票 0

我可以在 Python 3 中创建不可变的类属性吗?

我正在编写一个带有自定义 __eq__ 和 __hash__ 方法的类,并且 __hash__ 基本上返回类的属性之一(这是一个整数)。因此,我需要使这个属性像

回答 1 投票 0

“证明”字符串在c#中是不可变的

我已经知道在 C# 中,字符串是引用类型,主要像值类型一样处理,但我最近发现了这一点: http://net-informations.com/faq/general/immutable.htm 我正在尝试“p...

回答 4 投票 0

我可以声明一个接受名称-值参数来定义不可变属性的构造函数吗?

自 MATLAB R2019b 以来,可以从类属性中声明名称-值参数,这创建了一种优雅的方式来定义可以通过声明其

回答 2 投票 0

在什么情况下相等的字符串共享相同的引用?

我已经搜索了网络和堆栈溢出问题,但无法找到这个问题的答案。我的观察是,在 Python 2.7.3 中,如果你为两个变量分配相同的值

回答 3 投票 0

Python 冻结嵌套数据类,带有 __call__ = 替换

我正在尝试编写具有以下特征的不可变数据结构。 不可变的 轻松生成具有更改字段的不可变副本 可组合,因此更新嵌套数据就像...

回答 1 投票 0

如何复制结构体并同时修改其属性之一?

如果我想将视图控制器的状态表示为单个结构,然后实现撤消机制,我将如何更改结构上的一个属性,同时获取该结构的副本...

回答 7 投票 0

将不可变映射转换为可变映射java

我有一个不可变的映射,是从另一部分的方法中获得的。当处理时我想从中删除一个密钥然后进一步使用它,该密钥始终在地图上。 不可变映射 我有一个不可变的映射,是从另一部分的方法中获得的。当处理时我想从中删除一个密钥然后进一步使用它,该密钥始终在地图上。 ImmutableMap<String, Object> immutableMap = doSomethingAndGetImmutableMap(); // convert to mutable Map<String, Object> newMutableMap = ?? newMutableMap.remove("pin"); 是否有任何内置方法可以将不可变映射转换为可变映射java?我看到有几种方法可以做相反的事情,但不是从不可变映射到可变映射。 我使用了Maps.newHashMap,但它是最好、最有效的方法吗? 您可以使用复制构造函数从现有的 HashMap 创建一个新的 Map。 HashMap<String, Object> = new HashMap<>(immutableMap); 请注意,这是一个全新的对象。没有办法使不可变的映射变得可变。那将打破抽象。我想从概念上讲,您可以为不可变映射设计可变包装器,该映射将 changes 存储在第二个(私有)映射结构中。但 Guava 似乎并不支持这一点。 这个还是Maps.newHashMap性能更高? Guava Maps.newHashMap(map) 只是返回 new HashMap<>(map)。该调用将由 JIT 编译内联,因此一旦代码经过 JIT 编译,现代 JVM 上的性能差异应该为零。 您几乎肯定是在浪费时间对此类内容进行微优化: 您应该首先设计和编写应用程序代码并使其运行。 然后你对其进行基准测试。 然后您根据基准测试结果决定应用程序是否需要优化。 然后对其进行分析以确定性能热点在哪里。 然后优化性能热点。 除非有什么非常奇怪的事情,否则按照上述步骤就不会浪费时间问这个问题。套用1 唐纳德·高德纳 (Donald Knuth): “过早优化是万恶之源”. 1 ...并且过度简化/断章取义...

回答 1 投票 0

.NET 中可以使用不可变数组吗?

是否可以以某种方式将 System.Array 标记为不可变。当放在 public-get/private-set 后面时,它们无法添加到其中,因为它需要重新分配和重新分配,但消费者可以...

回答 10 投票 0

为什么java中字符串的不变性会导致这个问题额外的运行时间:https://leetcode.com/problems/search-suggestions-system/solution/

对于这个问题:https://leetcode.com/problems/search-suggestions-system/solution/,解决方案1指出,对于Java,_“由于字符串,存在O(m^2)的额外复杂性是不可变的...

回答 1 投票 0

Kotlin 从不可变映射和附加键值创建新映射的标准方法

Kotlin 中是否有标准方法将新的键值对与不可变映射关联起来? // => {A=1, B=2, C=3} 关联(mapOf(“A”到1,“B”到2),“C”,3); 薄...

回答 1 投票 0

如何使列表(或任何其他值)不可变:Python 中的真正常量?

在一次旧的讨论中,我发现了输入 Final 的参考。我尝试了文档中的示例: y: 最终[序列[str]] = ['a', 'b'] y.append('x') # 错误:“Sequence[str]”没有属性 &

回答 1 投票 0

JavaScript 中 Object.freeze() 和 Object.seal() 的用例是什么?

我做了一些搜索,发现 JavaScript 对象可以被冻结或密封,这意味着它们不能被修改或添加新属性。 我明白这些是什么

回答 4 投票 0

使用冻结异常时,单元测试中出现意外的“FrozenInstanceError”

我有一个单元测试,我想将其失败显示为错误报告的一部分。重要的是,不仅测试因错误而失败,而且错误消息非常清楚地证明了潜在的问题...

回答 1 投票 0

如何在 Kotlin 中创建不可变对象?

Kotlin 有一个 const 关键字。但我不认为 kotlin 中的常量是我认为的那样。它似乎与 C++ 中的 const 有很大不同。在我看来,它仅适用于静态成员......

回答 2 投票 0

Pandas:修改Multiindex的特定级别

我有一个带有多重索引的数据框,想要修改多重索引的一个特定级别。例如,第一级可能是字符串,我可能想从中删除空格

回答 3 投票 0

字符串的后缀列表以及它们之前在 Scala 中重复的次数

如果我们有一个字符串列表,请创建一个新列表,其中每个重复元素都有一个重复次数的后缀,并保留顺序。 例子: 列表(“a”,“a”,&quo...

回答 1 投票 0

双重链接的不可变对象(C# 记录)

我想创建双向链接对象(父级与子级,其中Parent.Child属性指父级的子级,Child.Parent指子级的父级)。 据我看来,这只会...

回答 1 投票 0

为什么我可以在引用上调用 File.take() ?

当我查看 File 的文档时,我发现 take 方法采用 self,而不是 &self。但我仍然可以在借用的引用上调用该方法: fn foo(文件:&文件) { 让 _ = file.take...

回答 1 投票 0

如何在Powershell中处理数据时间等可变参数?

我们的服务器空间不足(剩余 435Gb),我们想知道什么时候会耗尽空间,因为每 15 小时就会创建新的 1Gb 文件。所以,我制作了一个脚本,用户可以...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.