第一个swift程序:计算器,不到100行代码呀,简单吧!
2014-06-21 00:00
429 查看
摘要: 使用swift语言写的一个简易计计算器
要多简单有多简单, 不到100行代码就实现了一个计算器
要多简单有多简单, 不到100行代码就实现了一个计算器
// // ViewController.swift // Calculator // // Created by purkylin on 14-6-19. // Copyright (c) 2014年 Purkylin. All rights reserved. // import UIKit extension String { // subscript operator override subscript(index:Int) -> Character? { var cur = 0 for c in self { if cur == index { return c } } // return nil let ret:Character? return ret } } class ViewController: UIViewController { var operand1: Int = 0; // left operand var operand2: Int = 0; // right operand var operator: Character = "#"; // operator:+-*/= @IBOutlet var resultLabel : UILabel = nil // output result override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. } @IBAction func onClick(sender : UIButton) { println("Click" + sender.titleForState(UIControlState.Normal)); var label = sender.titleForState(UIControlState.Normal); var c:Character = label[0]! switch c{ case "+","-","*","/": operator = c case "=": var result = 0 switch operator { case "+": result = operand1 + operand2 case "-": result = operand1 - operand2 case "*": result = operand1 * operand2 case "/": result = operand1 / operand2 default: break } resultLabel.text = "\(result)" // clear status operator = "#" operand1 = result operand2 = 0 break default: if operator=="#" { let tmp = label.toInt()! operand1 = operand1*10 + tmp resultLabel.text = "\(operand1)" } else { let tmp = label.toInt()! operand2 = operand2*10 + tmp resultLabel.text = "\(operand2)" } } } // 其实这个ACTION可以不单独提出来,都放到ONCLICK函数里处理 @IBAction func clearClick(sender : UIButton) { operand1 = 0 operand2 = 0 operator = "#" resultLabel.text = "0" } }
相关文章推荐
- 不到100行代码实现一个简单的推荐系统
- 我的第一个Windows Phone7程序----------一个简单的计算器
- java 简单的计算器程序实例代码
- 用js编写的简单的计算器代码程序
- 【糟糕的代码】Android的第一个程序:简单的皮肤更换测试
- MFC入门(一)-- 第一个简单的windows图形化界面小程序(打开计算器,记事本,查IP)
- 第一个python程序简单加法计算器
- python+VTK环境搭建及第一个简单程序代码
- 用js编写的简单的计算器代码程序
- 不到100行代码实现一个简单的推荐系统
- 一个简单的AJAX实现,基于C#的ASP.Net,包括服务器端的程序代码
- 简单的计算器程序(VC++.net)
- AjaxPanel自定义控件实现页面无刷新数据交互(做了个示例程序, 效果确实比较Cool, 用法非常简单! )(示例代码下载)
- 简单SNMP管理程序的VC++代码实例实现
- AjaxPanel自定义控件实现页面无刷新数据交互(做了个示例程序, 效果确实比较Cool, 用法非常简单! )(示例代码下载)
- Beginning C# Objects从概念到代码——1.4 解析一个简单的C#程序
- VB.NET轻松实现任务栏程序 [不到10行代码]
- AjaxPanel自定义控件实现页面无刷新数据交互(做了个示例程序, 效果确实比较Cool, 用法非常简单! )(示例代码下载)
- 一个简单的统计代码行数的程序(基于MFC)
- 简单的无缝滚动程序-仅几行代码