//eksempel på funksjon //hvordan kan den forbedres? legg_sammen(i, j, k, l, m, n, o, p, q) { var sum; sum = i + j + k + l + m + n +o + p + q; print (sum); } main() { //funksjonen "legg_sammen" legger sammen tallene i parentesen og skriver ut summen legg_sammen(11,22,33,44,55,66,77,88,99); //reklame print('Give try.dartlang.org a try.'); }
http://blog.sethladd.com/2011/12/learning-functions-for-dart.html
class skriv { var hilse_tekst = 'Hei på deg,'; helsing_til(navn) { print('$hilse_tekst $navn'); } } main() { var skriv = new skriv(); skriv.helsing_til("Kjell!"); } ----- class Greeter { var prefix = 'Hello,'; greet(name) { print('$prefix $name'); } } main() { var greeter = new Greeter(); greeter.greet("Class!"); } ------
The preceding code shows some basic features of Dart classes:
class
statementGreeter
, that has the default superclass: Object
. In Dart, all classes descend from Object
, either directly or indirectly. Use the extends
keyword if you want to specify a non-Object
superclass.var
, final
, or a type. Each Greeter
object has its own copy of a variable named prefix
that’s initialized to 'Hello,'
.You can set instance variables directly (for example, greeter.prefix = 'Hi,'
), or through constructors, or through setter methods. (Setter and getter methods are discussed in the “More about classes” section, below.)new
followed by a constructor for the class—in this case, new Greeter()
. Because this code doesn’t define any Greeter
constructors, it gets a default version that calls the superclass’s no-argument constructor. The superclass of Greeter
is Object
, so the code new Greeter()
invokes the Object()
constructor.greet()
method defines a function that’s tied to a Greeter
object.Classes in Dart have many additional features. Two of the most commonly used ones are named constructors and setters and getters.
Greeter.withPrefix()
. When you define a constructor, the default no-argument constructor won’t be created for you; you’ll need to add it if you want it. For example:
// In the Greeter class: Greeter(); Greeter.withPrefix(this.prefix); // In code that creates Greeter objects: var greeter = new Greeter.withPrefix('Howdy,');
In that code, this.prefix
is a shortcut that assigns the parameter’s value to the instance variable prefix
.
Greeter
class:
class Greeter { String _prefix = 'Hello,'; // Hidden instance variable. String get prefix() => _prefix; // Getter for prefix. void set prefix(String value) { // Setter for prefix. if (value == null) value = ""; if (value.length > 20) throw 'Prefix too long!'; _prefix = value; } greet(name) { print('$prefix $name'); } } main() { var greeter = new Greeter(); greeter.prefix = 'Howdy,'; // Set prefix. greeter.greet('setter!'); }
=>
syntax for prefix()
. This shorthand notation makes the method return the value of the expression immediately following the =>
.greeter.prefix = 'Hola,';
// In the Greeter class: Greeter.withPrefix(this.prefix); // In code that creates Greeter objects: var greeter = new Greeter.withPrefix('Howdy,');
class Greeter { String prefix = 'Hello,'; greet(String name) { print('$prefix $name'); } } void main() { Greeter greeter = new Greeter(); greeter.greet('types'); }
// Ok, your turn! main() { var i,m; i = 1; m = 1; while (i < 100){ print (i); print (m); print (m/i); i = i + m; m = i + m; } print('Det var det');