|
|
@@ -1,16 +1,123 @@
|
|
|
+import 'dart:convert';
|
|
|
+
|
|
|
+import 'package:logger/logger.dart' as L;
|
|
|
+import 'package:simple_logger/simple_logger.dart';
|
|
|
import 'package:xdart_test/Bicycle.dart';
|
|
|
+import 'package:xdart_test/dio_test.dart';
|
|
|
import 'package:xdart_test/xdart_test.dart' as c_test;
|
|
|
|
|
|
-//
|
|
|
+import 'Spacecraft.dart';
|
|
|
+
|
|
|
+String fullName(String firstName, String lastName) => '$firstName$lastName';
|
|
|
+
|
|
|
+//函数命名参数
|
|
|
+//可指定默认值
|
|
|
+String fullNameAlisa({String firstName, String lastName = '磊'}) {
|
|
|
+ return '$firstName $lastName';
|
|
|
+}
|
|
|
+
|
|
|
+void show(int msg) {
|
|
|
+ print('list value:$msg');
|
|
|
+}
|
|
|
+
|
|
|
+//全局日志
|
|
|
+final simpleLogger = SimpleLogger();
|
|
|
+
|
|
|
void main(List<String> arguments) {
|
|
|
- for (var arg in arguments) {
|
|
|
- print(arg);
|
|
|
- }
|
|
|
+ var tmpArray = [1, 2, 3, 4];
|
|
|
+ tmpArray.forEach(show);
|
|
|
+
|
|
|
+ print('list data:$tmpArray');
|
|
|
+ tmpArray.add(1);
|
|
|
+ var asMap = tmpArray.asMap();
|
|
|
+ print('to map:$asMap');
|
|
|
+
|
|
|
+ print(fullName('chen', 'lei'));
|
|
|
+
|
|
|
+ //调用的时候,指定参数名
|
|
|
+ var tmpName = fullNameAlisa(firstName: '陈');
|
|
|
+
|
|
|
+ print('$tmpName');
|
|
|
+
|
|
|
+ //常量map
|
|
|
+ var mMap = const {
|
|
|
+ 1: 'name',
|
|
|
+ 'key': '不同类型',
|
|
|
+ };
|
|
|
+ mMap.forEach((k, v) => {print('key:$k,value:$v')});
|
|
|
+
|
|
|
var bike = Bicycle(age: 100);
|
|
|
- var info = bike.toString();
|
|
|
- var json = bike.toJson();
|
|
|
- print('bike info:$json');
|
|
|
+ var bikeDetail = bike.toJson();
|
|
|
+ print('bike info:$bikeDetail');
|
|
|
var num = 100;
|
|
|
print('this is num:$num');
|
|
|
print('Hello world: ${c_test.calculate()}!');
|
|
|
+
|
|
|
+ /**
|
|
|
+ *
|
|
|
+ */
|
|
|
+ var name = '旅行者一号';
|
|
|
+ var year = 1977;
|
|
|
+ var antennaDiameter = 3.7;
|
|
|
+ var flybyObjects = ['木星', '土星', '天王星', '海王星'];
|
|
|
+ var image = {
|
|
|
+ 'tags': ['土星'],
|
|
|
+ 'url': '//path/to/saturn.jpg'
|
|
|
+ };
|
|
|
+ image['plants'] = flybyObjects;
|
|
|
+ //=> (胖箭头) 简写语法用于仅包含一条语句的函数,该语法在将匿名函数作为参数传递时非常有用
|
|
|
+ image.forEach((k, v) => {print('$k,$v')});
|
|
|
+
|
|
|
+ while (year <= 1977) {
|
|
|
+ year++;
|
|
|
+ }
|
|
|
+ print('current year:$year');
|
|
|
+
|
|
|
+ var imageJson = json.encode(image);
|
|
|
+ print('image json :$imageJson');
|
|
|
+
|
|
|
+ var spacecraft = Spacecraft.unlaunched('神舟五号');
|
|
|
+ spacecraft.describe();
|
|
|
+
|
|
|
+ var orbiter = Orbiter('神州10号', DateTime.now(), 100.0);
|
|
|
+ orbiter.describe();
|
|
|
+
|
|
|
+ //带名字的构造函数
|
|
|
+ var prettyPrinter = L.PrettyPrinter(
|
|
|
+ methodCount: 3, // number of method calls to be displayed
|
|
|
+ errorMethodCount: 8, // number of method calls if stacktrace is provided
|
|
|
+ lineLength: 120, // width of the output
|
|
|
+ colors: true, // Colorful log messages
|
|
|
+ printEmojis: false, // Print an emoji for each log message
|
|
|
+ printTime: true // Should each log print contain a timestamp
|
|
|
+ );
|
|
|
+ var logger = L.Logger(
|
|
|
+ printer: prettyPrinter,
|
|
|
+ );
|
|
|
+ var encode = json.encode({'key': '大石头', '1': 109});
|
|
|
+ logger.i('this is logger json str:$encode');
|
|
|
+ logger.v('Verbose log');
|
|
|
+ logger.d('Debug log');
|
|
|
+ logger.i('Info log');
|
|
|
+ logger.w('Warning log');
|
|
|
+ logger.e('Error log');
|
|
|
+ logger.wtf('What a terrible failure log');
|
|
|
+
|
|
|
+// simpleLogger.setLevel(Level.ALL, includeCallerInfo: true);
|
|
|
+// simpleLogger.levelSuffixes = {
|
|
|
+// Level.FINEST: '👾 ',
|
|
|
+// Level.FINER: '👀 ',
|
|
|
+// Level.FINE: '🎾 ',
|
|
|
+// Level.CONFIG: '🐶 ',
|
|
|
+// Level.INFO: '😃',
|
|
|
+// Level.WARNING: '⚠️ ',
|
|
|
+// Level.SEVERE: '‼️ ',
|
|
|
+// Level.SHOUT: '😡 ',
|
|
|
+// };
|
|
|
+// simpleLogger.info('this is logger json str:$encode');
|
|
|
+
|
|
|
+ var dateTime = DateTime.now();
|
|
|
+ logger.i('$dateTime');
|
|
|
+
|
|
|
+ getHttp();
|
|
|
}
|