我认为这一定很简单,但我说得不对劲......
我有一个MxM三角矩阵,其系数逐行存储在矢量中.例如:
M = [ m00 m01 m02 m03 ]
[ m11 m12 m13 ]
[ m22 m23 ]
[ m33 ]
Run Code Online (Sandbox Code Playgroud)
存储为
coef[ m00 m01 m02 m03 m11 m12 m13 m22 m23 m33 ]
Run Code Online (Sandbox Code Playgroud)
现在我正在寻找一种非递归算法,它给出了矩阵大小M
和系数数组索引i
unsigned int row_index(i,M)
Run Code Online (Sandbox Code Playgroud)
和
unsigned int column_index(i,M)
Run Code Online (Sandbox Code Playgroud)
它所指的矩阵元素.所以
row_index(9,4) == 3
,column_index(7,4) == 2
等等.如果指数计数是从零开始.
编辑:已经给出了几个使用迭代的回复.有谁知道代数表达式?
有人知道RxJava 2中运算符"doAfterTerminate"和"doFinally"之间的区别是什么?
在我的代码中,我验证了电话号码。如果电话号码不正确 - 我会显示错误消息。但是,当用户开始编辑号码时,我想隐藏此错误消息。
我已经找到了解决方案currentState.reset()
,但似乎不是很好的解决方案。我必须处理保存文本和光标位置的问题。而且我还有一件小神器。通常当我按住退格键时 - 它会一一删除符号。如果我在显示错误消息时执行此操作 - 则错误消息会消失并且只删除一个符号。
有人知道这种情况的正确解决方案吗?
final TextEditingController controller = TextEditingController();
final RegExp _phoneRegex = RegExp(r"^\+{1}\d{10, 15}\$");
bool isError = false;
TextSelection currentPosition;
return Column(
children: <Widget>[
Form(
key: _textKey,
child: TextFormField(
controller: controller,
validator: (str) {
isError = true;
if (str.isEmpty) {
return err_empty_field;
} else if (!_phoneRegex.hasMatch(str)) {
return err_invalid_phone;
}
isError = false;
},
),
onChanged: () {
if (controller.selection.start < 0 &&
controller.text.length > 0) {
TextSelection position =
controller.text.length > …
Run Code Online (Sandbox Code Playgroud) 我正在使用Flutter TextField
小部件。TextField
如果用户未填写,我想在小部件下方显示错误消息TextField
。在这种情况下,我不必使用TextField
Widget TextFormField
。
我的代码是这样写的,但它给出了一个错误说:
错误:无法将“List”类型的值分配给“Widget”类型的变量。
Column(
children: [
Question(
questions[_questionIndex]['questionText'],
),
...(questions[_questionIndex]['answers'] as List<String>)
.map((answer) {
return Answer(_answerQuestion, answer);
}).toList()
],
)
Run Code Online (Sandbox Code Playgroud) 我看过新的颤振视频,也看到了一些有趣的东西。(这不是典型的粘性标题或可扩展列表,所以我不知道如何命名)
视频- 从 0:20 开始观看
有人知道如何使用 SliverList 创建带有标题的此类列表吗?
my obj is:
Map myJSON = {
"name": {"first":"foo","last":"bar"},
"age":31, "city":"New York"
};
Run Code Online (Sandbox Code Playgroud)
I want to replace it with the new output Ex:
String myJSON = '{"name":{"first":"foo","last":"bar"}, "age":31, "city":"New York"}';
Run Code Online (Sandbox Code Playgroud) 从flutter 1.9开始,flutter_web在flutter中合并。我正在尝试在chrome浏览器中运行初始flutter应用程序,但失败。操作系统是Ubuntu 19.04
我成功使用的命令:flutter upgrade
颤动创建test_1_9
cd test_1_9
扑动
该命令不起作用:
颤振运行-d铬
=>未找到名称或ID与“ chrome”匹配的设备
我尝试使用google-chrome作为设备名称,结果相同
[?] Flutter (Channel master, v1.10.2-pre.38, on Linux, locale fr_FR.UTF-8)
• Flutter version 1.10.2-pre.38 at /home/rbarbe/programes/flutter
• Framework revision e6ae95c4ce (il y a 18 heures), 2019-09-11 07:46:57 -0700
• Engine revision 7ea9884ab0
• Dart version 2.5.0 (build 2.5.0-dev.4.0 be66176534)
[?] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
• Android SDK at /home/rbarbe/Android/Sdk
• Android NDK location not configured (optional; useful for native profiling …
Run Code Online (Sandbox Code Playgroud) 我有StreamBuilder
Widget build(BuildContext context) {
return StreamBuilder(
initialData: false,
stream: widget.stream, ...
Run Code Online (Sandbox Code Playgroud)
对于初始化小部件,我调用:
_EventSpeakerPager(..., streamController.stream.distinct());
Run Code Online (Sandbox Code Playgroud)
这会产生错误"Bad state:Stream已经被收听了." 没有distinct()
它可行,但它不适合我.
我试过asBroadcastStream()
并得到了同样的错误
有谁知道,我该怎么办?
PS我已经研究了这些:
PPS当我没有使用流时StreamBuilder
- 一切正常
void initState() {
super.initState();
widget.stream.listen((bool data) {
setState(() {
...
});
});
Run Code Online (Sandbox Code Playgroud)
}