object Solution1 extends App {
val input1 = "a,c,e,g,i,k"
val input2 = "b,d,f,h,j,l"
val i1= input1.split(",")
val i2 = input2.split(",")
val x =i1.zipAll(i2, "", "").map{
case (a,b)=> a + b
}
println(x.mkString(","))
}
//output : ab,cd,ef,gh,ij,kl
C# происходит из "подобной c" семьи, что касается синтаксиса, но до архитектуры это чувствует больше как Java (никакие указатели [хорошо, как указано ниже, можно использовать их, но большинство людей не знает или заботится о том], массивы связываются проверенные, собрал "мусор" память, и т.д.).
Можно получить большую часть этого в C++, но не в ядре.
Не любым значимым способом. Это вдохновлено C (среди других), но они - вполне существенно различные языки.
C++ не является реальным надмножеством C ни один (см. текст ссылки),
C# и C действительно не связаны (кроме подобного синтаксиса). C# является jitted вниз к машинному коду от IL, когда программа запускается. C# не имеет указателей за исключением типов значения на том стеке. C# полностью безопасен с точки зрения типов, C не. C требует явного управления памятью, где, поскольку C# собран "мусор". Список различий продолжается и на...
Давайте поместим его как это:
C
иC#
подобны какrm -rf . /
и# rm -rf . /
подобны
Короче говоря, никакой C не является подмножеством C#. Вид многих управляющих структур базируется на C. Как, для циклов, переключатели, в то время как и так далее. В то же время C# запрещает потенциально опасные конструкции, как уменьшение со случая в переключателе при упущении повреждения; или помещение целого числа как, если условие, где булевская переменная ожидается. Вышеупомянутая кавычка означает, что C# и C могут выглядеть очень похожими, но перевести в весьма различные результаты. Где C не будет препятствовать тому, чтобы Вы удалили все из своего раздела, C# защитит Вас от выполнения этого по ошибке, фигурально говоривший.
На другом уровне C позволяет Вам преобразовывать тип указателей на целые числа, третировать их, вспоминать и затем ячейки памяти доступа, которые затем хранятся в том указателе. C не защитит Вас от доступа к памяти, которая не выделяется Вами. Вы получите катастрофический отказ - в лучшем случае C# - с другой стороны - будет иметь исключения, которые замечают Вас, когда Вы делаете вещи как доступ к объекту throgh нулевая ссылка.
C# очень отличается от C (и также C++ очень отличается от C). Это, не потому что semanthics, которые являются в конце, не слишком отличающемся, но из-за понятий, идеи, которые находятся позади C#.
Когда Вы программируете в C#, необходимо думать по-другому от того, что Вы используетесь, чтобы сделать при использовании C: это - основное различие.