Jak utworzyć ciąg wielopoziomowy w Scala?
Strings w Scala to pojedyncze linie, które są owinięte w podwójne cytaty. Możemy tworzyć struny wielopoziomowe w Scala, otaczając tekst z trzema podwójnymi cytatami lub za pomocą rurek przez Stripmargin (). Tworząc ciąg wielopasmowy, możesz kontrolować, aby utrzymać oryginalne wcięcie i formatowanie.
Różne sposoby tworzenia ciągów multiline w Scala w Ubuntu 20.04?
Aby zrozumieć różne sposoby tworzenia sznurka multiline w Scali, powinniśmy spojrzeć na poniższe przykłady:
Przykład nr 1: Za pomocą trzech podwójnych cytatów („„ ”) do tworzenia ciągów wielopoziomowych
Pierwszym przykładem jest użycie trzech podwójnych cytatów, które pomagają pisać ciągami wielopoziomowymi w Scala. Kiedy używamy trzech podwójnych cytatów, przestrzeń jest zachowana i wyświetlana w skrypcie. Poniżej mamy przykładowy kod, który pokazuje, jak wygląda ciąg.
W przykładowym kodzie utworzyliśmy klasę obiektu jako „przykład1”. W głównej funkcji klasy zdefiniowaliśmy zmienną z słowem kluczowym „VAL” nazwanym „str1”, który jest inicjowany z ciągiem. Ciąg jest przechowywany w trzech podwójnych cytatach, jak pokazano. Instrukcja drukowania przyjmuje „STR1” jako parametr, który zwraca ciąg wielopoziomowy.
Po wykonaniu powyższego kodu mamy dane wyjściowe ciągów wielolinowych. Zauważ, że przestrzeń jest tutaj zachowana na początku każdej linii. Musimy poradzić sobie z tymi przestrzeniami i wyeliminować je. W następnym przykładzie mamy rozwiązanie dla tych przestrzeni.
Przykład nr 2: Używanie Stripmargin () do tworzenia ciągów wielopoziomowych
W powyższym przykładowym kodzie mamy wadę używania trzech podwójnych kodów, ponieważ utrzymuje przestrzenie zachowane. Możemy wyeliminować wszystkie te przestrzenie, używając Stripmargin na końcu trzech podwójnie cytowanych sznurków wielolinowych i dodawania rury („|”) wraz z każdą linią. Dzięki Stripmargin możemy wyeliminować cały margines mając puste miejsce i separatory z sznurka na listach.
W przykładowym kodzie zadeklarowaliśmy klasę jako „przykład2”. W klasie „przykład2” zdefiniowaliśmy naszą główną funkcję, która wyeliminuje przestrzenie. Tutaj mamy zmienną „val” jako „STR2”. Zmienna „STR2” jest inicjowana za pomocą ciągów wielopoziomowych. Ten ciąg wielopasmowy jest przechowywany w trzech podwójnych cytatach, a wraz z początkiem każdego wiersza sznurka użyliśmy symbolu rurowego („|”). Uwzględniliśmy również Stripmargin na końcu sznurka bez przeniesionych argumentów. To usuwa pionowy pasek od początku linii struny wraz z białymi i pustymi. Ostatecznie przekazaliśmy ciąg multiline, który jest przechowywany w „STR2” do funkcji drukowania. Funkcja drukowania wykonuje i wyświetla wyjście.
Po wdrożeniu i wykonywaniu powyższego przykładu kodu z powodzeniem usunęliśmy całą przestrzeń, która znajduje się na początku linii ciągów. Wyjście pokazano poniżej na ekranie terminalu Ubuntu 20.04.
Przykład nr 3: Używanie niestandardowego tokenu w Stripmargin () do tworzenia ciągów wielopoziomowych
Jeśli nie chcesz używać symbolu rury ('|') w ciągu wielopasmowej. Następnie Scala może użyć dowolnego innego dowolnego znaku, tak że w naszym przypadku używamy znaku hashtag „#”. Ten symbol eliminuje również białe znak od początku każdej linii. Aby użyć dowolnego innego znaku w ciągu wielopasmowej, musimy przekazać ten znak w StringMargin () jako argument. Wykonajmy kod w Ubuntu 20.04 Aby zobaczyć, jak taki dowolny znak usuwa przestrzenie.
W przykładowym kodzie zdefiniowaliśmy klasę o nazwie „Przykład3”. W przypadku funkcji klasowej mamy zmienną „VAL” zdefiniowaną jako „STR3”. Zmienna „STR3” jest inicjowana z ciągiem owiniętym w trzy podwójną cytat. Każda linia ciągów wielopoziomowych dołączyliśmy znak hashtagu „#”, który idzie do nieobserwowanych przestrzeni wokół każdej nowej linii. Minęliśmy ten znak hashtagu „#” w Stripmargin (), który jest dodawany do końca sznurka. Teraz, w funkcji drukowania, minęliśmy „STR3”, który zwróci sznurek multiline bez przestrzeni na początku linii. Zauważ, że użyliśmy hashtagu „#” w pojedynczym cytacie podczas przekazywania go do Stripmargin. Jeśli przekazamy znak hashtagu w podwójnej cytatu, występuje wyjątek. Wyjściowy ciąg wielolinowy zwrócony po wykonaniu skryptu Scala, który wyświetla, że na początku wiersza nie ma spacji. Stąd wcięcie jest nieobserwowane.
Przykład nr 4: Używanie zastępcy, aby uzyskać pojedynczą linię
Aby przekonwertować ciąg wielopoziomowy na pojedynczy ciągły ciąg, możemy dodać metodę zastępczej na końcu metody marginesu paska. Below, we have a running example code that uses the replaceAll method to convert a multi-line string into a new single-line string.
Przykładowy kod jest zadeklarowany za pomocą klasy „Przykład4”. W klasie „Przykład4” zainicjowaliśmy zmienną „STR4” z ciągiem wielolinowym. String multiline jest otoczony trzema podwójnymi cytatami. Na końcu strumienia wielopoziomowego mamy dodaną metodę Stripmargin wraz z metodą zastępczą. Metoda zastępcza przełomu linia „\ n” jako argument, który zastąpi pęknięcia linii wygenerowane w wierszach ciągu. Zwróciliśmy wartość przekazaną w funkcji drukowania.
Łącznik jednoliniowy został pobrany jako z metody zastępczej.
Przykład nr 5: Za pomocą podwójnych cytatów („”) wyrażenia wewnętrznego
Pojedyncze cytaty i podwójne cytaty nie muszą uciec; To kolejna świetna funkcja w ciągach wielopasmowych Scala.
W powyższym przykładowym kodzie mamy klasę jako „przykład5”], w której zdefiniowaliśmy zmienną z „STR5”. Zmienna „STR5” ma ciąg wielopoziomowy owinięty w trzy podwójne cytaty. Jednofytowaliśmy słowo „wiele linii” i podwójnie cytowaliśmy słowo „przykład” z ciągu. Teraz wydrukuj ciąg multiline, który jest przechowywany w „STR5”.
Wniosek
Prowadzimy głęboką dyskusję na temat artykułu Scala wieloletni. Wykazaliśmy różne sposoby tworzenia wieloletnich ciągów w Scala za pomocą trzech podwójnych cytatów owiniętych wokół ciągu, a także za pomocą Stripmargin, które wyeliminują cały margines z ciągu. Następnie używamy rury lub innego znaku, który zapewnia spójność zarówno w wgłębieniu skryptu Scala, jak i ciągu. Mamy nadzieję, że otrzymasz pomoc z wielu linii Scala.