Parse dynamic as int or fallback to a default value The 2019 Stack Overflow Developer Survey Results Are InVariable Naming Conventions For Maps/Lists in Dynamically-Typed languagesWhat is the difference between statically typed and dynamically typed languages?Static/Dynamic vs Strong/Weakdart, a nice way of replacing keys and values in maps?Math in Dart - working with numbers other than base 10Dynamic typing in JavaScript: Is this a good idea?Declare a List of Map in a class with Dart and FlutterUse question mark operator when calling method on possible null value?Flutter TextField with controller resetting after TextInputType changeError: “type 'String' is not a subtype of type 'int'” when mapping a Dart Map
Can't find the latex code for the ⍎ (down tack jot) symbol
Should I use my personal or workplace e-mail when registering to external websites for work purpose?
Understanding the implication of what "well-defined" means for the operation in quotient group
Falsification in Math vs Science
Is three citations per paragraph excessive for undergraduate research paper?
Deadlock Graph and Interpretation, solution to avoid
Inversion Puzzle
Why Did Howard Stark Use All The Vibranium They Had On A Prototype Shield?
Inflated grade on resume at previous job, might former employer tell new employer?
Could JWST stay at L2 "forever"?
What does "sndry explns" mean in one of the Hitchhiker's guide books?
Limit the amount of RAM Mathematica may access?
Where to refill my bottle in India?
Is it possible for the two major parties in the UK to form a coalition with each other instead of a much smaller party?
"To split hairs" vs "To be pedantic"
How to reverse every other sublist of a list?
How are circuits which use complex ICs normally simulated?
How to change the limits of integration
Time travel alters history but people keep saying nothing's changed
How was Skylab's orbit inclination chosen?
JSON.serialize: is it possible to suppress null values of a map?
I looked up a future colleague on LinkedIn before I started a job. I told my colleague about it and he seemed surprised. Should I apologize?
How can I fix this gap between bookcases I made?
Idiomatic way to prevent slicing?
Parse dynamic as int or fallback to a default value
The 2019 Stack Overflow Developer Survey Results Are InVariable Naming Conventions For Maps/Lists in Dynamically-Typed languagesWhat is the difference between statically typed and dynamically typed languages?Static/Dynamic vs Strong/Weakdart, a nice way of replacing keys and values in maps?Math in Dart - working with numbers other than base 10Dynamic typing in JavaScript: Is this a good idea?Declare a List of Map in a class with Dart and FlutterUse question mark operator when calling method on possible null value?Flutter TextField with controller resetting after TextInputType changeError: “type 'String' is not a subtype of type 'int'” when mapping a Dart Map
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty height:90px;width:728px;box-sizing:border-box;
I have a map with dynamic values, one of which can be an int
, string
or null
(i.e. non-existing key).
I want to store this value in an int
variable. The parsing I came up with ended up being quite cumbersome:
Map<String, dynamic> map = 'maxposts': null; // or 23 or '42'
// Try to parse an int value or fall back to 0
int maxposts = (map['maxposts'] is int)
? map['maxposts']
: int.tryParse(map['maxposts'] ?? '0') ?? 0;
Is there a nicer way of doing such a "try-fallback" parsing?
dart flutter dynamic-typing
add a comment |
I have a map with dynamic values, one of which can be an int
, string
or null
(i.e. non-existing key).
I want to store this value in an int
variable. The parsing I came up with ended up being quite cumbersome:
Map<String, dynamic> map = 'maxposts': null; // or 23 or '42'
// Try to parse an int value or fall back to 0
int maxposts = (map['maxposts'] is int)
? map['maxposts']
: int.tryParse(map['maxposts'] ?? '0') ?? 0;
Is there a nicer way of doing such a "try-fallback" parsing?
dart flutter dynamic-typing
1
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43
add a comment |
I have a map with dynamic values, one of which can be an int
, string
or null
(i.e. non-existing key).
I want to store this value in an int
variable. The parsing I came up with ended up being quite cumbersome:
Map<String, dynamic> map = 'maxposts': null; // or 23 or '42'
// Try to parse an int value or fall back to 0
int maxposts = (map['maxposts'] is int)
? map['maxposts']
: int.tryParse(map['maxposts'] ?? '0') ?? 0;
Is there a nicer way of doing such a "try-fallback" parsing?
dart flutter dynamic-typing
I have a map with dynamic values, one of which can be an int
, string
or null
(i.e. non-existing key).
I want to store this value in an int
variable. The parsing I came up with ended up being quite cumbersome:
Map<String, dynamic> map = 'maxposts': null; // or 23 or '42'
// Try to parse an int value or fall back to 0
int maxposts = (map['maxposts'] is int)
? map['maxposts']
: int.tryParse(map['maxposts'] ?? '0') ?? 0;
Is there a nicer way of doing such a "try-fallback" parsing?
dart flutter dynamic-typing
dart flutter dynamic-typing
asked Mar 8 at 8:40
Magnus WMagnus W
4,37553164
4,37553164
1
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43
add a comment |
1
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43
1
1
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43
add a comment |
1 Answer
1
active
oldest
votes
You can abstract the operation into a function like
int intOrStringValue(dynamic o)
if (o is String) o = int.tryParse(o);
return o ?? 0;
or
int intOrStringValue(dynamic o) =>
(o is String ? int.tryParse(o) : o) ?? 0;
It gets more readable when you don't repeat the map['maxposts']
expression throughout the logic.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55059480%2fparse-dynamic-as-int-or-fallback-to-a-default-value%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can abstract the operation into a function like
int intOrStringValue(dynamic o)
if (o is String) o = int.tryParse(o);
return o ?? 0;
or
int intOrStringValue(dynamic o) =>
(o is String ? int.tryParse(o) : o) ?? 0;
It gets more readable when you don't repeat the map['maxposts']
expression throughout the logic.
add a comment |
You can abstract the operation into a function like
int intOrStringValue(dynamic o)
if (o is String) o = int.tryParse(o);
return o ?? 0;
or
int intOrStringValue(dynamic o) =>
(o is String ? int.tryParse(o) : o) ?? 0;
It gets more readable when you don't repeat the map['maxposts']
expression throughout the logic.
add a comment |
You can abstract the operation into a function like
int intOrStringValue(dynamic o)
if (o is String) o = int.tryParse(o);
return o ?? 0;
or
int intOrStringValue(dynamic o) =>
(o is String ? int.tryParse(o) : o) ?? 0;
It gets more readable when you don't repeat the map['maxposts']
expression throughout the logic.
You can abstract the operation into a function like
int intOrStringValue(dynamic o)
if (o is String) o = int.tryParse(o);
return o ?? 0;
or
int intOrStringValue(dynamic o) =>
(o is String ? int.tryParse(o) : o) ?? 0;
It gets more readable when you don't repeat the map['maxposts']
expression throughout the logic.
answered Mar 8 at 9:43
lrnlrn
11.3k1527
11.3k1527
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55059480%2fparse-dynamic-as-int-or-fallback-to-a-default-value%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
I don't think there is.
– Günter Zöchbauer
Mar 8 at 8:43