func sumOf(numbers: Int...) -> Int {
var sum: Int = 0
for number in numbers {
sum += number
}
return sum
}
sumOf(1, 2, 3) //6
Run Code Online (Sandbox Code Playgroud)
这是取自SwiftiBook 的示例代码。它找到任意数量的参数的总和。
此代码的 Python 等效项是:
def sumOf(*args):
sum = 0
for number in args:
sum += number
return sum
sumOf(1, 2, 3) #6
Run Code Online (Sandbox Code Playgroud)
在 python 中, *args 接受所有变量类型,因此如果我出于某种原因想要这样做,我可以:
def sumOf(*args):
sum = ""
for number in args:
sum += str(number)
return sum
sumOf(1, "test", 3) #"1test3"
Run Code Online (Sandbox Code Playgroud)
我该如何在 中执行此操作Swift?如何创建具有可变数量的任意类型参数的函数?我不需要这样做,但我想知道如何做。
谢谢。
如何使用 AVPlayer 快速播放 YouTube 视频?
我正在使用下面的代码来播放 YouTube 视频,但 avplayer 中没有任何反应。它仍然是空白的。
var urlstring = "https://www.youtube.com/watch?v=hMba_c-VSkI"
var url = NSURL(string: urlstring)
var av:AVPlayerViewController = segue.destinationViewController as AVPlayerViewController
av.player = AVPlayer(URL: url)
Run Code Online (Sandbox Code Playgroud) 我正在使用 Xcode 7.3。我已经将 Playground 和 Frameworks 放在同一个工作区中并构建了框架。我仍然收到此错误
Playground execution failed: error: Couldn't lookup symbols:
_RestofireVersionNumber
Run Code Online (Sandbox Code Playgroud)
如何解决这个问题?
我对 Xcode 有问题..如果我想运行任何游乐场,即使是简单的代码,例如:print("Hello"),它不起作用,有一段时间卡在“运行”上并且无法运行代码,我尝试重新安装并删除 xcode 文件......但它仍然无法正常工作,这是出现的消息:(无法启动进程。无法在当前状态下查找:正在关闭)
..
无法启动进程。无法查找服务 com.apple.CoreSimulator.host_support: 0xfffffecc )
这是最新版本 8.2.1(8C1002)
所以我有以下贪婪算法,它给了我以下错误:
Playground 执行中止:错误:执行被中断,原因:EXC_BAD_INSTRUCTION(代码=EXC_I386_INVOP,子代码=0x0)。进程已留在中断点,使用“thread return -x”返回到表达式求值之前的状态。
班级:
// This class represents an undirected graph using adjacency list
public class Graph{
var V: Int // number of vertices
var adj: [[Int]] = [[]] //Adjacency List
public init(v: Int) {
V = v
adj = [[Int]](repeating: [], count: v)
}
// Function to add an edge into the graph
public func addEdge(v: Int, w: Int){
adj[v].append(w)
adj[w].append(v) // Graph is undirected
}
// Assigns colors (starting from 0) to all vertices and
// …Run Code Online (Sandbox Code Playgroud) 我仍然是 swift 的新手,我无法在一些事情上得到明确的答案。
到目前为止,我一直在 Playgrounds 中使用单个文件。如果我想使用更多文件,如何从在控制视图的主文件中创建的类访问数据(变量和函数)?
据我所知,拥有多个文件只是为了方便,所以我不能再写一次。
(也在旁边)当一个函数具有私有、公共或只是“func”时,这意味着什么?
我正在使用 swift 3 playground
谢谢
我一直在尝试学习 Swift 4,因此需要使用 Xcode9 Beta 作为 IDE。我想加载一个大型 CSV 数据文件以使用操场进行一些数据分析。我尝试使用的库是CSVImporter,按照开发人员的推荐使用 Carthage 安装。
我在这个问题上花了一个星期,试图遵循我在网上找到的指南,比如这里 - Stackoverflow,这里 - Medium,但它们都指的是以前版本的 Swift 和 Xcode,似乎没有一个有效。
一般来说,他们的方法似乎是将游乐场与使用导入资源的项目合并到工作区中。我通常会得到“没有这样的模块‘CSVImporter’”。
我的具体问题是:如何设置 Swift 4 Playground 以便我可以使用 Xcode 9 Beta 导入 CSVImporter?
虽然我有这个特定的任务,但我认为这会引起社区的普遍兴趣。我怀疑有人比我对 Xcode 如何执行构建和解决构建依赖有更清晰的想法,能够很容易地解决这个问题!非常感谢。
我在 Swift Playground 中使用了一些不同的 SCNAction,并且动画运行速度非常慢。这是我的一个行为的例子
node.runAction(SCNAction.repeatForever(SCNAction.rotateBy(x: 0, y: 0, z: 2 * .pi, duration: 2)))
Run Code Online (Sandbox Code Playgroud)
另外,我的操作代码位于一个单独的类中,就像我在网上阅读的那样,那么可能有什么问题呢?
提前致谢!
我正在尝试使用 AVFoundation (特别是 installTap:onBus:) for ios 来访问用户的麦克风以在我正在制作的游戏中进行麦克风输入。在常规 xcode 项目中,您将请求用户访问并将 NSMicrophoneUsageDescription 写入 info.plist。
然而,由于游乐场的性质,他们没有可写入的 info.plist。结果是,在请求权限(弹出窗口向用户显示)后,playground 崩溃,因为它无法写入 info.plist 文件!它没有给我一个真正的错误日志,所以我通过在 xcode 项目中运行相同的代码推断出这是错误。
有没有什么方法可以强制游乐场写入特定的 info.plist 文件/在游乐场中绕过此权限?
我正在尝试使用 SceneKit 为 WWDC 学生挑战赛做一些事情,这要求我的项目在 Swift 游乐场中。我不断收到“运行此页面时出现问题”的消息。它不提供错误消息。它只是建议检查我的代码或重新开始。我曾尝试单独删除代码段,但找不到此问题的根源。我还尝试在 man Xcode playground 中运行它,它提供了警告,我引用“操场无法继续运行,因为操场源代码做到了”。我被困住了。我的代码有什么问题。
import UIKit
import SceneKit
import QuartzCore
import PlaygroundSupport
class GameScene: UIViewController, SCNSceneRendererDelegate {
var primaryView: SCNView!
var primaryScene: SCNScene!
var cameraNode: SCNNode!
override func viewDidLoad() {
sceneAndViewInit()
cameraInit()
createGround()
moonInit()
}
func createGround() {
var ground = SCNBox(width: 200, height: 1, length: 200, chamferRadius: 0)
var groundPhysicsShape = SCNPhysicsShape(geometry: ground, options: nil)
var groundNode = SCNNode(geometry: ground)
ground.firstMaterial?.diffuse.contents = UIColor.orange
ground.firstMaterial?.specular.contents = UIColor.white
groundNode.position = SCNVector3(0, -6, 0)
groundNode.physicsBody …Run Code Online (Sandbox Code Playgroud) swift-playground ×10
swift ×8
xcode ×5
ios ×4
scenekit ×2
ios8 ×1
iphone ×1
swift4 ×1
xcode9-beta5 ×1