当前位置: 首页 > 面试题库 >

Swift中Int的前导零

乐正乐湛
2023-03-14
问题内容

我想将IntSwift中的a 转换为String前导零的a。例如,考虑以下代码:

for myInt in 1 ... 3 {
    print("\(myInt)")
}

当前的结果是:

1
2
3

但我希望它是:

01
02
03

Swift标准库中是否有一种干净的方法可以做到这一点?


问题答案:

假设您希望字段长度为2,且前导零为零,则可以这样做:

import Foundation

for myInt in 1 ... 3 {
    print(String(format: "%02d", myInt))
}

输出:

01
02
03

这需要import Foundation因此从技术上讲不是斯威夫特语言的一部分,而是由提供的功能Foundation框架。请注意这两个import UIKitimport Cocoa包括Foundation因此没有必要再次导入它,如果你已导入CocoaUIKit

格式字符串可以指定多个项目的格式。例如,如果您尝试将3小时,15分钟和7秒格式化为以下格式,则03:15:07可以这样做:

let hours = 3
let minutes = 15
let seconds = 7
print(String(format: "%02d:%02d:%02d", hours, minutes, seconds))

输出:

03:15:07


 类似资料:
  • 我想将Swift中的转换为前导为0的。例如,考虑以下代码: 目前的结果是: 但我希望它是: 在Swift标准库中有没有一种干净的方法来实现这一点?

  • 我试图验证输入,这样用户只允许输入一个有9位数字的int。我当前的代码负责前导零,任何大于9位的输入,但如果小于9位则不负责。 例如,它不应该允许用户输入int 123。 如果数字大于9,下面的代码将验证数字输入,但不考虑小于9的数字。 如果用户输入的整数小于9位。由于字符串的原因,它将填充剩余的插槽,并使其成为9位数字。格式(我只包含这个,以便它适用于前导零)。我不知道如何绕过前导零,以及确保输

  • 问题内容: 下面是一段代码,它是功能解密和加密程序的一部分。 如您所见,两个变量i和j首先被视为字符串,以便在任何一位数字前添加一个0(作为字符串)。然后将这些变量组合成一个四位数的数字(仍为字符串)。在程序的后面,在函数中使用创建的数字,因为s删除所有前导零。 我的问题:是否可以强制python保持s的前导零?我已经并且继续在线搜索。 编辑 为了帮助人们,我将程序的加密部分包括在内。这就是问题所

  • 我正在使用spring web服务连接到一个安全的url并发送一个SOAP请求。在wsdl中定义一个特定字段为: 我使用genjaxb从wsdl生成类,因此该字段生成为: ... ... ... ... 问题是,主机希望任何一位数字的天数(第1天到第9天)发送为:“&LTCollectionDay&>03</CollectionDay&>”(前导0) 如果我能把它转换成String很容易,但是sp

  • 问题内容: 我正在尝试找出如何在Swift中将转换为。 我想出一种解决方法,但是我很想弄清楚如何在Swift中做到这一点。 问题答案: 转换为: 而另一种方式-转换为: 或者,如果您使用的是Swift 2或3:

  • 问题内容: 我想将转换成斯威夫特。像这样的基本转换不起作用,因为这些类型不是基元,这与Objective-C中的s和s 不同 但这会产生以下错误消息: “浮点数”不可转换为“整数” 知道如何将属性从转换为吗? 问题答案: 您可以转换到斯威夫特这样的: 您还可以使用@paulm的注释来实现此结果: