zoukankan      html  css  js  c++  java
  • iOS-延时加载,延时初始化

    • OC版
    • // classA.h
      @property (nonatomic, copy) NSString *testString;
      
      //classA.m
      - (NSString*)testString {
          if (!_testString) {
              _testString = @"Hello";
              NSLog(@"Print at first time");
          }
          return _testString
      }
    • Swift版
    • //在变量属性前加 lazy 指定延时加载
      class ClassA {
          lazy var str: String = {
              let str = "Hello"
              print("print at first time")
              return str
          }()
          
          // or 
          // lazy var str: String = "Hello"
      
      }
      
      // lazy + array.map / filter
      let data = 1...3
      let result = data.lazy.map {
          (i: Int) -> Int in
          print("i is (i)")
          return i * 2
      }
      
      print("print results")
      
      for i in result {
          print("result is (i)")
      }
      
      print("end")
      
      /*
      print results
      i is 1
      result is 2
      i is 2
      result is 4
      i is 3
      result is 6
      end
      */
  • 相关阅读:
    Idea中SpringBoot热部署搭建
    Redis 集群搭建
    centos7 vsftp搭建
    Centos 7 安装jdk
    Centos7 安装nginx
    Xshell 连接Linux
    python 的mysql 操作
    NIO/BIO
    java基础-3
    java基础-2
  • 原文地址:https://www.cnblogs.com/HackHer/p/8459218.html
Copyright © 2011-2022 走看看