string - تحويل كثافة العمليات إلى سلسلة في سويفت




casting int converter swift (17)

أحاول العمل على كيفية تصوير Int في String في Swift.

أجد حلاً NSNumber ، باستخدام NSNumber ولكني أحب معرفة كيفية القيام بكل ذلك في Swift.

let x : Int = 45
let xNSNumber = x as NSNumber
let xString : String = xNSNumber.stringValue

Answers

طرق متعددة للقيام بذلك:

var str1:String="\(23)"
var str2:String=String(format:"%d",234)

تحقق من الإجابة أدناه:

let x : Int = 45
var stringValue = "\(x)"
print(stringValue)

let a =123456888
var str = String(a)

أو

var str = a as! String

فقط من أجل الاكتمال ، يمكنك أيضًا استخدام:

let x = 10.description

أو أي قيمة أخرى تدعم الوصف.


تحويل Unicode كثافة العمليات إلى سلسلة

بالنسبة لأولئك الذين يريدون تحويل سلسلة Int إلى سلسلة Unicode ، يمكنك القيام بما يلي:

let myInteger: Int = 97

// convert Int to a valid UnicodeScalar
guard let myUnicodeScalar = UnicodeScalar(myInteger) else {
    return ""
}

// convert UnicodeScalar to String
let myString = String(myUnicodeScalar)

// results
print(myString) // a

أو بدلا من ذلك:

let myInteger: Int = 97
if let myUnicodeScalar = UnicodeScalar(myInteger) {
    let myString = String(myUnicodeScalar)
}

أنا باستخدام هذا النهج البسيط

سلسلة إلى Int:

 var a = Int()
var string1 = String("1")
a = string1.toInt()

ومن Int إلى String:

var a = Int()
a = 1
var string1 = String()
 string1= "\(a)"

لتوفير الوقت والجهد في المستقبل ، يمكنك إنشاء امتداد Int. عادة ما أقوم بإنشاء ملف كود مشترك حيث أضع الامتدادات والتعدادات وغيرها من الأشياء الممتعة. هذا ما يبدو عليه رمز الامتداد:

extension Int
{
    func toString() -> String
    {
        var myString = String(self)
        return myString
    }
}

ثم في وقت لاحق عندما تريد تحويل int إلى سلسلة يمكنك فقط القيام بشيء مثل:

var myNumber = 0
var myNumberAsString = myNumber.toString()

تحويل Int إلى String :

let x : Int = 42
var myString = String(x)

والطريقة الأخرى - تحويل String إلى Int :

let myString : String = "42"
let x: Int? = myString.toInt()

if (x != nil) {
    // Successfully converted String to Int
}

أو إذا كنت تستخدم Swift 2 أو 3:

let x: Int? = Int(myString)


لأي سبب من الأسباب لم تنجح الإجابة المقبولة بالنسبة لي. ذهبت مع هذا النهج:

var myInt:Int = 10
var myString:String = toString(myInt)

في swift 3.0 ، يمكنك تغيير عدد صحيح إلى سلسلة كما هو موضح أدناه

let a:String = String(stringInterpolationSegment: 15)

طريقة أخرى هي

let number: Int = 15
let _numberInStringFormate: String = String(number)

// أو أي عدد صحيح بدلاً من 15


let Str = "12"
let num: Int = 0
num = Int (str)

هنا 4 طرق:

var x = 34
var s = String(x)
var ss = "\(x)"
var sss = toString(x)
var ssss = x.description

أستطيع أن أتخيل أن بعض الناس سيكون لديهم مشكلة مع ss. ولكن إذا كنت تبحث لبناء سلسلة تحتوي على محتوى آخر ، فلماذا لا.


لتحويل سلسلة إلى Int

var numberA = Int("10")

Print(numberA) // It will print 10

لخريف Int في سلسلة

var numberA = 10

الطريق الأول)

print("numberA is \(numberA)") // It will print 10

الطريقة الثانية)

var strSomeNumber = String(numberA)

أو

var strSomeNumber = "\(numberA)"

سويفت 4:

محاولة إظهار القيمة في التسمية بدون كلمة () اختيارية .

هنا س هي قيمة كثافة العمليات باستخدام.

let str:String = String(x ?? 0)

exampleLabel.text = String(yourInt)


يمكنك استخدام نوع عداد من الخوارزمية للتحويل إلى سلسلة. حصلت على هذه التقنية من برمجة أجهزة الكمبيوتر Commodore 64 . كما أنه جيد أيضًا في برمجة الألعاب.

  • تأخذ عدد صحيح وتأخذ كل الرقم الذي تم تقييمه بواسطة صلاحيات 10. حتى نفترض أن العدد الصحيح هو 950.

    • إذا كان العدد الصحيح يساوي أو أكبر من 100.000 ثم اطرح 100،000 وزاد العداد في السلسلة في ["000000"]؛
      استمر في فعل ذلك إلى أن لا يوجد المزيد من الأرقام في الموضع 100.000. إسقاط قوة أخرى من عشرة

    • إذا كان العدد الصحيح يساوي أو أكبر من 10000 ثم اطرح 10،000 وزيادة العداد في السلسلة عند ["000000"] + 1 موضع؛
      استمر في فعل ذلك حتى لا يوجد عدد إضافي في الموضع 10،000.

  • إسقاط قوة أخرى من عشرة

  • نمط التكرار

أعلم أن 950 صغير جداً لاستخدامه كمثال لكن آمل أن تحصل على الفكرة.





string casting int converter swift