Загрузка...

Чем заменить методы split и join?

Тема в разделе C# создана пользователем FXT 10 дек 2022. 321 просмотр

  1. FXT
    FXT Автор темы 10 дек 2022 17 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. Посмотреть предыдущие комментарии (12)
    2. FXT Автор темы
      Патологоанатом, ой блтяь, извиняюсь, ошибся. Метод String.Split создает массив подстрок, разбивая входную строку по одному или нескольким разделителям.
    3. Патологоанатом
      FXT, не имею представления, как это можно реализовать без использования метода
  3. Yotic
    Yotic 10 дек 2022 Ебашу на C# всё что захотите(Разноцветное) 43 13 янв 2021
    В чём проблема?
     
    1. Патологоанатом
      Yotic, нужно заменить методы .join() и .split()
    2. FXT Автор темы
      Yotic, Та проблема в том, что преподаватель дал задание и условие, что не должны использоваться методы, которые нельзя отобразить на "блок=схеме". И вот надо как-то заменить Split и Join, а мои навыки не позволяют продумать это.
    3. Yotic
      FXT, Проверяй каждый символ через цикл, а дальше уже сам)
  4. r3xq1
    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) );
    --- Сообщение объединено с предыдущим 10 дек 2022
    Если не полениться и загуглить, прежде чем писать сюда, то можно быстрее найти для себя ответ на вопрос.
    Вот тоже есть решение на CyberForum
     
    10 дек 2022 Изменено
  5. Danilka33716
    Danilka33716 11 дек 2022 лучшие аккаунты бабл квас 51 2 июл 2019
    дак а че сложного? просто перепиши работу методов
     
Загрузка...
Top