Загрузка...

How to replace the split and join methods?

Thread in C# created by FXT Dec 10, 2022. 349 views

  1. FXT
    FXT Topic starter Dec 10, 2022 17 Jun 30, 2018

    private void button1_Click(object sender, EventArgs e)
    {
    var Arr = textBox1.Text.Split();
    BubbleSort(Arr);
    textBox2.Text = string.Join(" ", Arr);
    }

    Имеется данный код, по условию не должны использоваться методы, чем их можно заменить?
     
  2. Патологоанатом
    Можно ли в C# присоединить строку через "+="?
     
    1. View previous comments (12)
    2. FXT Topic starter
      Патологоанатом, ой блтяь, извиняюсь, ошибся. Метод String.Split создает массив подстрок, разбивая входную строку по одному или нескольким разделителям.
    3. Патологоанатом
      FXT, не имею представления, как это можно реализовать без использования метода
  3. mikuzeboka
    mikuzeboka Dec 10, 2022 5 Jan 13, 2021
    В чём проблема?
     
    1. Патологоанатом
      mikuzeboka, нужно заменить методы .join() и .split()
    2. FXT Topic starter
      mikuzeboka, Та проблема в том, что преподаватель дал задание и условие, что не должны использоваться методы, которые нельзя отобразить на "блок=схеме". И вот надо как-то заменить Split и Join, а мои навыки не позволяют продумать это.
    3. mikuzeboka
      FXT, Проверяй каждый символ через цикл, а дальше уже сам)
  4. r3xq1
    r3xq1 Dec 10, 2022 53 Jul 27, 2018
    Split
    C#
    for (int i = 0; i < str.Length; i++)
    {
    if (str[i] != ' ' && str[i] != '.' && str[i] != ',')
    {
    s += str[i];
    }
    else
    {
    Console.WriteLine(s);
    s = "";
    }
    }
    C#
    static IEnumerable<string> Split(this string str, Func<char,bool> pred)
    {
    StringBuilder sb = new StringBuilder();
    for(int i = 0; i < str.Length; i++)
    {
    if (pred(str[i]))
    sb.Append(str[i]);
    else if (sb.Length > 0)
    {
    yield return sb.ToString();
    sb.Clear();
    }
    }
    if (sb.Length > 0)
    yield return sb.ToString();
    }
    Но зачем их заменять? Для чего вообще эти костыли?

    Join
    C#
    string[] many = { "ab", "bc", "cd", "de" };
    StringBuilder sb = new StringBuilder();
    many.ForEach(x => sb.Append(x));
    Console.WriteLine(string.Format("Result: " + sb)); // Result: abbccdde
    // или так: string resultPlus = string.Empty; many.ForEach(x => resultPlus = string.Format("{0}{1}", resultPlus, x) );
    The post was merged to previous Dec 10, 2022
    Если не полениться и загуглить, прежде чем писать сюда, то можно быстрее найти для себя ответ на вопрос.
    Вот тоже есть решение на CyberForum
     
  5. Danilka33716
    Danilka33716 Dec 11, 2022 лучшие аккаунты бабл квас 51 Jul 2, 2019
    дак а че сложного? просто перепиши работу методов
     
Loading...
Top