我刚刚接触 Flutter 的 BLoC 架构。在这里,我想创建一个Bloc类,它将帮助我以流数据的形式转换用户输入。为了完成这项任务,假设首先我创建了一个Bloc具有名称的类的实例,email然后,
email.emailController.sink.add(some_string)email.streamEmail(some_string)email.streamEmail(some_string)向流中添加字符串输入
代码片段:
//Snippet 0 : w/o any `method`
class Bloc{
final emailController = StreamController<String>();
}
Run Code Online (Sandbox Code Playgroud)
//Snippet 1 : using regular 'method'
class Bloc{
final emailController = StreamController<String>();
void streamEmail(String value) => emailController.sink.add(value);
}
Run Code Online (Sandbox Code Playgroud)
//Snippet 2 : using 'get' based 'method'
class Bloc{
final emailController = StreamController<String>();
Function(String) get streamEmail => emailController.sink.add;
}
Run Code Online (Sandbox Code Playgroud)
我了解到,在代码可读性方面,使用代码段 1 或 2 是一种更好的方法。我知道代码段 …
我想知道 Dart 中分配给不同数据类型的内存量。但我找不到函数/运算符(例如sizeofC 中的运算符)来执行此操作。我为此目的参考了dart:core图书馆,但仍然找不到任何合适的方法。那么,是否有其他方法可以获取数据类型的大小,或者只是无法获取?
我在这里阅读了该函数的 scipy 文档:scipy.ndimage.uniform_filter1d。然而,当我尝试使用它时,我无法理解它的工作原理。我阅读了文档,在 Python Shell 中运行了该示例,使用了我自己的示例,但仍然没有进展。例如:
>>> from scipy.ndimage import uniform_filter1d
>>> uniform_filter1d([2, 8, 0, 4, 1, 9, 9, 0], size=3)
array([4, 3, 4, 1, 4, 6, 6, 3])
>>> uniform_filter1d([1, 2, 3, 4, 5, 6, 7, 8], size=3)
array([1, 2, 3, 4, 5, 6, 7, 7])
Run Code Online (Sandbox Code Playgroud)
当我看到第二个数组的输出时,感觉这个函数保留了数组的大部分元素。然而,在第二个示例中,感觉就像除了 4 和 1 之外,输出数组中的所有其他元素都是全新的。
因此,我希望您能帮助我了解此功能的工作和使用。