zoukankan      html  css  js  c++  java
  • try? try! try do catch try 使用详解

    当一个使用一个方法发现后面 throws  说明可能会抛出异常 需要try 进行处理 

    1  try? 如果解析成功就有值 否则返回nil  (推荐)

    2  try! 如果解析成功就有值  否则直接崩溃 (不推荐)

    3  try 如果 如果解析成功就有值  如果出错 能够处理异常 输出错误 do try catch

    4 oc 中 ARC 开发自动添加 release autorelease  retain   如果用try catch 一旦不平衡就会出现内存泄漏

           
            let jsonStr = "{"name":."上官"}"
            
            let data = jsonStr.data(using: .utf8)
            
            // try? 如果解析成功就有值 否则返回nil  (推荐)
            let json = try? JSONSerialization.jsonObject(with: data!, options: [])
            
            // try! 如果解析成功就有值  否则直接崩溃 (不推荐)
            
            let json0 = try! JSONSerialization.jsonObject(with: data!, options: [])
    //
    //        // try 如果 如果解析成功就有值  如果出错 能够处理异常 输出错误 do try catch
    //        
            do {
                let json1 = try JSONSerialization.jsonObject(with: data!, options: [])
                 print( json1 )
            } catch  {
                 print(error)
            }
    //        print( json )
  • 相关阅读:
    JetBrains下载历史版本
    php入门笔记
    Ajax获取服务器信息
    Ubuntu上安装PHP环境-mysql+apache+php-Linux操作系统
    Ubuntu彻底删除/卸载mysql,php,apache
    轻松理解JS基本包装对象
    JS事件委托
    浅谈JS事件冒泡
    JS闭包那些事
    浅谈JS的变量提升
  • 原文地址:https://www.cnblogs.com/ZhangShengjie/p/6821779.html
Copyright © 2011-2022 走看看