小编Jul*_* A.的帖子

为什么Java Optionals不可变?

我想了解为什么Java 8 Optionals被设计为不可变的.它只是为了线程安全吗?

java optional

12
推荐指数
2
解决办法
2305
查看次数

是否有适用于Android的第三方UI库?

我见过专门的Android UI库,比如图表,但没有用于控件和容器的替代实现.有吗?

user-interface android components view

11
推荐指数
1
解决办法
2万
查看次数

好的是更新片段而不是创建新实例?

在Android文档中使用片段的示例中,当应用程序处于"双视图"模式时,只要应用程序需要显示不同标题的详细信息,就会重新创建详细信息片段. FragmentTransaction.replace()用于将每个旧的详细信息片段实例换成​​新的.

这是推荐的做法吗?当真正的意图(没有双关语意图)要更新UI显示的内容而不是UI本身时,创建新的UI实例并不浪费.在我看来,创建新实例的唯一原因是,如果有人打算将它们添加到backstack,那么用户可以回溯步骤.否则,直接更新片段是否安全/可取?

在该示例的情况下,它将意味着一种方法DetailsFragment.setShownIndex().这将被调用,传入新的标题索引,而不是重新创建DetailsFragment.

假设我们有一个示例版本,其中一个活动管理两个片段,但一次只显示一个片段,根据需要交换每个片段.活动是否可以创建每个片段的实例,保留对每个片段的引用,然后根据需要简单地添加或删除这两个实例?

这可能是粘性的一个结果是,当标题片段处于resumed状态(即在"前景"中)时,选择标题将导致在DetailsFragment.setShownIndex()细节片段处于stopped状态时进行调用.

好主意?馊主意?

提前致谢.

lifecycle android transactions fragment android-activity

11
推荐指数
1
解决办法
7494
查看次数

Android SQLite游标是否一次将所有记录加载到内存中?

Android SQLite游标是否将查询的所有数据加载到内存中,还是某种优化策略是其实现的一部分?

sqlite android

11
推荐指数
2
解决办法
2305
查看次数

android.unitTests.returnDefaultValues如何工作?

我知道在Android项目的build.gradle中应该做什么.但它是如何工作的?什么是返回的默认值?他们如何与"真实"价值观进行比较?

android {
    // ...
    testOptions { 
        unitTests.returnDefaultValues = true
    }
}
Run Code Online (Sandbox Code Playgroud)

android unit-testing gradle

11
推荐指数
1
解决办法
6181
查看次数

如何使用JSDoc3来记录嵌套的命名空间

我在使用JSDoc3来记录按照这些方式构建的代码时遇到了麻烦

/**
 * @namespace MyNamespace.MySubNamespace
 */

(function (MyNamespace) {
    MyNamespace.MySubNamespace.Foo = {
        doSomething: function (someParam) {
            // doing it
        }
    }
})(window.MyNamespace)
Run Code Online (Sandbox Code Playgroud)

我如何使用JSDoc3来记录MyNamespace包含MySubNamespace哪些内容Foo?而且我将如何关联doSomethingFoo和记录它的参数someParam

一个限制我的是,我不能添加到文档中的文件MyNamespaceMySubNamespace声明.

非常感谢!

javascript documentation namespaces jsdoc

8
推荐指数
1
解决办法
4618
查看次数

模拟Spock的最后一堂课

可以嘲笑模拟最后的课程吗?如果是这样,怎么样?搜索结果提出了这个要点,这似乎意味着如此,但我找不到任何这样做的例子.我还发现论坛帖子说不支持模拟最终类.

final mocking spock

8
推荐指数
2
解决办法
1万
查看次数

线程局部性

我有这句话来自Goetz的Java Concurrency In Practice:

由于上下文切换导致的线程运行时开销包括保存和恢复执行上下文,丢失局部性以及调度线程而不是运行它们所花费的CPU时间.

什么是"失去地方"?

java multithreading

8
推荐指数
1
解决办法
196
查看次数

在Kotlin中直接引用enum实例而没有类

在Kotlin中,当E与我使用其实例的代码位于同一文件中时,我无法直接引用枚举的实例:

enum class E {
    A, B
}
Run Code Online (Sandbox Code Playgroud)

我想做的事:

val e = A    
Run Code Online (Sandbox Code Playgroud)

我可以做什么:

val e = E.A
Run Code Online (Sandbox Code Playgroud)

这可能吗?

enums kotlin

8
推荐指数
1
解决办法
817
查看次数

数字"总量"的含义

我对Java语言规范中"整体大小"的含义感到困惑:

扩展原始转换不会丢失有关数值总体大小的信息.

它是"数量级"还是"绝对值"?或者是其他东西?

java numbers

6
推荐指数
1
解决办法
461
查看次数