F # строение строки - PullRequest
       17

F # строение строки

4 голосов
/ 02 декабря 2008

Я хочу сделать этот код C # в F #

  string[] a = new string[5];
    string b = string.Empty;
    a[0] = "Line 1";
    a[2] = "Line 2";

    foreach (string c in a)
    {
        b = c + Environment.NewLine;
    }

Ответы [ 3 ]

14 голосов
/ 02 декабря 2008

Гораздо лучше использовать встроенный метод String.Join, чем использовать собственную функцию, основанную на повторном объединении строк. Вот код в F #:

open System
let a = [| "Line 1"; null; "Line 2"; null; null;|] 
let b = String.Join(Environment.NewLine, a)
2 голосов
/ 08 августа 2011

Вы можете использовать функцию F # concat из модуля System, например:

let a = [| "Line 1"; null; "Line 2"; null; null;|] 
let b = String.concat System.Environment.NewLine a

(вы не должны импортировать System пространство имен, чтобы избежать конфликта имен между F # String module и .NET String class)

2 голосов
/ 02 декабря 2008

Оператор '^' объединяет две строки. Кроме того, '+' перегружен, поэтому он может работать со строками. Но лучше использовать стратегию StringBuilder или Join.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...