从控制台输出“HelloWorld”是我学习C语言的第一步,也是我人生中非常重要的一步。多年后的今天,我仍希望以HelloWorld作为第一步,与大家共同开启一个神奇、瑰丽的世界——Swift编程。

本章以HelloWorld作为切入点,向大家系统介绍如何使用Xcode的Playground编写和运行Swift程序代码。

编写和运行Swift程序有多种方式,我们可以通过在Xcode中创建一个iOS或Mac OS X工程来实现,也可以通过使用Xcode6提供的Playground来实现。在学习阶段,我推荐大家使用Playground工具编写和运行Swift程序。

编程利器Playground

Playground离不开Xcode6,它是苹果在Xcde6中添加的新功能。使用Xcode创建工程编写和运行程序,目的是为了使最终的程序编译和发布,而使用Playground的目的是为了学习、测试算法、验证想法和可视化地看到运行结果。

下图所示是一个Playground程序运行界面,其中①区域是代码编写区域,②区域是运行结果区域,③区域是时间轴(timeline)区域。时间轴可以查看程序从上到下按照时间运行的结果,不同时间阶段运行的结果可以通过文本、图形和曲线图表等方式展示给开发人员。

Playground界面

编写HelloWorld程序

下面我们具体介绍如何使用Playground编写HelloWorld程序。首先,打开Xcode6的欢迎界面(如图2-2所示)。一般第一次启动Xcode6就可以看到这个界面,如果没有,可以通过菜单Windows→Welcome to Xcode打开。

在上图所示的欢迎界面中,单击“Get started with playground”弹出如下图所示的对话框。在这个对话框中,我们可以修改Playground文件名以及要保存的目录。完成之后可以单击“Create”按钮创建Playground,创建成功后界面如图所示。

我们在上图所示的界面就可以编辑了,其中模板已经生成了一些代码,修改代码如下:

import Cocoa

var str ="Hello World"

println(str)

代码修改完成后,马上就会编译运行,但是我们在右边只能看到str变量情况,不能看到println输出结果,如图2-5所示。此时可以单击“Hello World”后面的“Value History”按钮,打开时间轴,如下图图所示。

从上图所示的时间轴可以看到输出的结果。其中,Console Output是println函数的输出结果。

我们还可以通过助手编辑器打开Playground时间轴界面,具体操作过程如下图所示。右键单击标题栏,在菜单中选中“Icon and Text”,然后在出现的工具栏中,单击打开助手编辑器。在助手编辑器中也有时间轴界面。

 

代码解释

Swift实现HelloWorld的方式比C和Objective-C等语言的实现要简单得多,下面我们详细解释一下代码。

1. import Cocoa语句

import Cocoa表示引入Cocoa框架,类似于Objective-C中的#import和C中的#include。至于后面引入何种Cocoa框架,就需要我们查找API来确定了。就本例而言,我们根本不需要Cocoa框架,不过导入也没关系。

2. var str = "Hello World"

声明str变量,var表示声明变量。在var中并不能看出变量是什么类型,但Swift可以通过赋值的类型推断出变量的类型。由于我们赋值的是"Hello World"字符串,因此可知str是字符串变量。我们还应该注意到语句结束时没有出现像C和Objective-C等语言结束时的分号(;)。

3. println(str)

println是一个函数,能够将变量或量输出到控制台,类似于C中的println函数和Objective-C中的NSLog函数。有关格式化输出的问题我们会在后面再介绍。

这样我们通过短短的3行代码实现了一个HelloWorld输出的功能,事实上我们还可以写得更少。

更多内容请关注国内第一本Swift图书《Swift开发指南》
本书交流讨论网站:http://www.51work6.com/swift.php
欢迎加入Swift技术讨论群:362298485

欢迎关注智捷iOS课堂微信公共平台

使用Playground编写第一个Swift程序的更多相关文章

  1. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  2. swift学习:第一个swift程序

    原文:swift学习:第一个swift程序 最近swift有点火,赶紧跟上学习.于是,个人第一个swift程序诞生了... 新建项目

  3. 【安装eclipse, 配置java环境教程】 编写第一个java程序

    写java通常用eclipse编写,还有一款编辑器比较流行叫IJ.这里我们只说下eclipse编写java的前期工作. 在安装eclipse之前要下载java的sdk文件,即java SE:否则无法运 ...

  4. 【C#入门教案-02】用记事本编写第一个C#程序-Hello World

    02-用记事本编写第一个C#程序-Hello World 广东职业技术学院  欧浩源 [1]进行.NET程序开发的最基本环境配备 .NET Framework + 代码编辑工具(记事本或Noetpad ...

  5. 一起学Hadoop——使用IDEA编写第一个MapReduce程序(Java和Python)

    上一篇我们学习了MapReduce的原理,今天我们使用代码来加深对MapReduce原理的理解. wordcount是Hadoop入门的经典例子,我们也不能免俗,也使用这个例子作为学习Hadoop的第 ...

  6. 从零自学Java-1.编写第一个Java程序

    编写第一个Java程序 完成工作:1.在文本编辑器中输入一个Java程序. 2.使用括号组织程序. 3.保存.编译和运行程序. package com.Jsample;//将程序的包名称命名为com. ...

  7. Java笔记:编写第一个Java程序

    2017.6.17 1.编写第一个Java程序 创建text文本,命名第一个Java程序.txt 在里面编写Java代码 public class Demo1{ public static void ...

  8. 假期作业02:安装JDK与文本编辑器并编写第一个Java程序

    假期作业02:安装JDK与文本编辑器并编写第一个Java程序 一.安装JDK与文本编辑器并编写第一个java程序 首先在oracle官网(需要创建账号,进行登录后方可使用)按照自己的需求下载JDK(h ...

  9. 编写第一个MapReduce程序—— 统计气温

    摘要:hadoop安装完成后,像学习其他语言一样,要开始写一个“hello world!” ,看了一些学习资料,模仿写了个程序.对于一个C#程序员来说,写个java程序,并调用hadoop的包,并跑在 ...

随机推荐

  1. android Handler错误,不同的包Handler

    1. import java.util.logging.Handler;这个包了会自动生成如下方法.当时还觉得和以前的不一样了,本不在意. Handler handler1= new Handler( ...

  2. win7常用快捷键

    Win+1:打开/显示超级任务栏第一个图标代表的程序Win+2:打开/显示超级任务栏第二个图标代表的程序(3.4.……如此类推)Win+Tab:3D切换窗口,你要是按住不松口,则所有窗口会轮流翻转Wi ...

  3. 关于GridBagLayout的讲解哦

    13-08-29 17:01:10|  分类: Java |  标签:gridbaglayout  gridbagconstraints  添加方法  |字号 订阅     GridBagLayout ...

  4. pjsip视频通信开发(上层应用)之数字键盘的制作

    在pjsip视频通信开发(上层应用)之EditText重写中我制作了一个显示输入内容的EditText,这里将制作一个数字键盘,其实跟计算器一样,最多的就是用TableLayout来实现,内部通过权重 ...

  5. C++ Brush

    关键点 实现过程 void CCreateBrushView::OnDraw(CDC* pDC) {     CCreateBrushDoc* pDoc = GetDocument();     AS ...

  6. delphi array应用 DayOfWeek星期几判断

    //array应用 DayOfWeek星期几判断 procedure TForm1.Button1Click(Sender: TObject);var    days:array[1..7] of s ...

  7. Struts2之异常处理

    一.学习案例:通过在input.jsp页面输入登录账号和password測试异常处理机制. 二.案例分析:struts2提供了局部异常处理机制和全局异常处理机制.局部优先于全局异常处理,当异常找不到局 ...

  8. memset用法详解(转)

    问题描述: int * cow = new int[n+1]; memset(cow,0,(n+1)*4); 将N+1个元素置成0,为什么不行 memset是对一个字节的int4个字节,因此*4 但是 ...

  9. Activate、Deactivate 事件 Activate ThrottleEvent;

    http://help.adobe.com/zh_CN/as3/mobile/WS4bebcd66a74275c36cfb8137124318eebc6-8000.html   Activate.De ...

  10. Web开发接口测试工具——Postman插件的使用(chrome浏览器)

    Postman是chrome浏览器的一款插件.Postman 可以模拟 http 请求的发送,并自动解析 JSON 和 XML 的返回数据. 可以手动的去配置各类 parameter,还支持 Basi ...