Swift (3.0) String "padding (::)" [ Swift 2.x "stringByPaddingToLength (::)" ], , , , . , , . , .
, , "padding (::)". , , . , .
, "println", , Swift 2.x +, "print()".
:
let n : Int = 5
let result1 = 1000.0
let result2 = 20000.0
let time1 = "1000ms"
let time2 = "1250ms"
let column1PadLength = 8
let columnDefaultPadLength = 12
let headerString = "n".padding(toLength: column1PadLength, withPad: " ", startingAt: 0) + "result1".padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + "result2".padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + "time1".padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + "time2".padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0)
let lineString = "".padding(toLength: headerString.characters.count, withPad: "-", startingAt: 0)
let nString = String(n)
let result1String = String(result1)
let result2String = String(result2)
let dataString = nString.padding(toLength: column1PadLength, withPad: " ", startingAt: 0) + result1String.padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + result2String.padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + time1.padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0) + time2.padding(toLength: columnDefaultPadLength, withPad: " ", startingAt: 0)
print("\(headerString)\n\(lineString)\n\(dataString)")
:
n result1 result2 time1 time2
--------------------------------------------------------
5 1000.0 20000.0 1000ms 1250ms
"columnDefaultPadLength" 12 8 :
n result1 result2 time1 time2
----------------------------------------
5 1000.0 20000.0 1000ms 1250ms
, , , , , ! "columnDefaultPadLength" 8 4 :
n resuresutimetime
------------------------
5 1000200010001250
, , , .