#arrays #swift
#массивы #swift
Вопрос:
Я не пытаюсь добавлять массивы, как и все другие вопросы. Это то, что я хочу сделать:
var a = [1,2,3]
var b = [4,5,6]
var outPut = [14,25,36]
Как вы можете видеть, я хочу объединить индексы. Как бы я это сделал?
Ответ №1:
Вы можете сжать две коллекции и сопоставить элементы кортежа, умножив первый элемент на 10 и добавив второй. Конечно, это предполагает, что ваша коллекция целых чисел ограничена одной цифрой:
let outPut = zip(a,b).map{ $0 * 10 $1 } // [14,25,36]
Если элементы вашей коллекции не ограничены одной цифрой, вы можете умножить первый элемент на 10 на количество цифр во второй коллекции (при этом считается, что все целые числа не являются отрицательными:
var a = [12,25,37]
var b = [34,567,6443]
let outPut = zip(a,b).map{ $0 * Int(pow(Double(10),Double(String($1).count))) $1 } // [1234, 25567, 376443]