Najlepszy samouczek Scala String W 2024 r. W tym samouczku możesz dowiedzieć się Tworzenie ciągów,długość łańcucha znaków,String konkatenacji,Tworzenie sformatowanej ciąg,Metody String,
Poniższe przykłady przypisać stałą ciąg:
object Test { val greeting: String = "Hello,World!" def main(args: Array[String]) { println( greeting ) } }
Powyższe przykłady definiuje zmienną powitanie, stały ciąg znaków, to jest typu string (java.lang.String).
W Scala, typ string jest rzeczywiście Java String, że nie ma klasy String.
W Scala, String jest niezmienna obiekt tak, aby obiekt nie może być modyfikowany. Oznacza to, że jeśli zmodyfikować ciąg będzie produkować nowy obiekt ciąg.
Jednak inne obiekty, jak na przykład tablicy jest zmienna obiektu. Następnie będziemy wprowadzać wspólnej metody java.lang.String.
Tworzyć ciąg przykłady są następujące:
var greeting = "Hello World!"; 或 var greeting:String = "Hello World!";
Nie określić typ String na łańcuch, ponieważ Scala kompilator automatycznie ustalić typ łańcucha na łańcuch.
Oczywiście możemy także zadeklarować ciąg wyświetlany bezpośrednio jako typu String, jako przykłady:
object Test { val greeting: String = "Hello, World!" def main(args: Array[String]) { println( greeting ) } }
Realizacja powyższego kodu, wyjście jest:
$ scalac Test.scala $ scala Test Hello, world!
Jak już wspomniano wcześniej obiekty String są niezmienne, jeśli trzeba utworzyć ciąg może być modyfikowana, można użyć klasy Builder String, następujące przykłady:
object Test { def main(args: Array[String]) { val buf = new StringBuilder; buf += 'a' buf ++= "bcdef" println( "buf is : " + buf.toString ); } }
Realizacja powyższego kodu, wyjście jest:
$ scalac Test.scala $ scala Test buf is : abcdef
Możemy użyć metody length (), aby uzyskać długość ciągu:
object Test { def main(args: Array[String]) { var palindrome = "www.w3write.com"; var len = palindrome.length(); println( "String Length is : " + len ); } }
Realizacja powyższego kodu, wyjście jest:
$ scalac Test.scala $ scala Test String Length is : 14
Klasa String stosując metodę concat (), aby połączyć dwa ciągi:
string1.concat(string2);
Przykłady Demo:
scala> "本教程官网: ".concat("www.w3write.com"); res0: String = 本教程官网: www.w3write.com
Podobnie, można również użyć znaku plus (+), aby połączyć:
scala> "本教程官网: " + " www.w3write.com" res1: String = 本教程官网: www.w3write.com
Spójrzmy na kompletny przykład:
object Test { def main(args: Array[String]) { var str1 = "本教程官网:"; var str2 = "www.w3write.com"; var str3 = "本教程的 Slogan 为:"; var str4 = "学的不仅是技术,更是梦想!"; println( str1 + str2 ); println( str3.concat(str4) ); } }
Realizacja powyższego kodu, wyjście jest:
$ scalac Test.scala $ scala Test 本教程官网:www.w3write.com 本教程的 Slogan 为:学的不仅是技术,更是梦想!
Klasa String można użyć metody printf (), aby format wyjściowy ciąg znaków, format string () Metoda zwraca obiekt String zamiast obiektu PrintStream. Poniższy przykład demonstruje sposób printf () zastosowania:
object Test { def main(args: Array[String]) { var floatVar = 12.456 var intVar = 2000 var stringVar = "本教程!" var fs = printf("浮点型变量为 " + "%f, 整型变量为 %d, 字符串为 " + " %s", floatVar, intVar, stringVar) println(fs) } }
Realizacja powyższego kodu, wyjście jest:
$ scalac Test.scala $ scala Test 浮点型变量为 12.456000, 整型变量为 2000, 字符串为 本教程!()
Metody Poniższa tabela java.labg.String powszechnie stosowane, można użyć w Scala:
Nie. | Sposób i opis |
---|---|
1 | char charAt (int index) Zwraca znak w określonym położeniu |
2 | int compareTo (Object o) Porównaj obiektów ciągów |
3 | int compareTo (String anotherString) Porównuje dwa ciągi lexicographically |
4 | int compareToIgnoreCase (String str) Porównuje dwa ciągi lexicographically, ignorując sprawę |
5 | concat String (String str) Koniec określonego ciągu podłączony do tego łańcucha |
6 | logiczne contentEquals (StringBuffer sb) Ten ciąg do określonej StringBuffer do porównania. |
7 | static String copyValueOf (char [] Dane ) Zwraca tablicę String reprezentuje sekwencję znaków |
8 | static String copyValueOf (char [] Dane , int offset, int count) Zwraca tablicę String reprezentuje sekwencję znaków |
9 | logiczna endswith (sufiks String) Sprawdza czy ten ciąg kończy się z określonym sufiksem |
10 | boolean equals (Object jakisObiekt) Ten ciąg do określonego stosunku obiektu |
11 | logiczna equalsIgnoreCase (String anotherString) Porównaj ten ciąg do innego String, ignorując kwestie przypadków |
12 | getBytes bajt () Korzystanie z domyślnej postaci platformy ustawić ten ciąg zakodowany ciąg bajtów i zapisuje wynik do nowej tablicy bajtowej |
13 | byte [] getBytes (String charsetName Przy użyciu określonego zestawu znaków wynik ten ciąg zakodowany ciąg bajtów i zapisuje do nowej tablicy bajtowej |
14 | void getChars (int srcBegin, int srcEnd , char [] dst, int dstBegin) Od tego czasu, ciąg znaków jest kopiowany do tablicy znaków docelowe |
15 | int hashCode () Zwraca kod skrótu dla tego łańcucha |
16 | int indexOf (int ch) Zwraca określonego indeksu znaku w tym ciąg pierwszego wystąpienia |
17 | int indexOf (int ch, int fromIndex ) Transfer Zwraca indeks w tym ciągu określonego charakteru pojawia się na początku, od określonego indeksu, aby rozpocząć wyszukiwanie |
18 | int indexOf (String str) Zwraca określony podciąg tego ciągu na pierwszym wystąpieniu indeksu |
19 | int indexOf (String str, int fromIndex ) Zwraca określony podciąg tego ciągu na pierwszym wystąpieniu indeksu, począwszy od określonego indeksu |
20 | intern String () Zwraca ciąg znaków reprezentujący standaryzację obiektów |
21 | lastIndexOf int (int ch) Zwraca ciąg znaków w tym od pojawienia się ostatniego indeksu |
22 | lastIndexOf int (int ch, int fromIndex ) Zwraca określony indeks charakter w tym ciągu ostatniego wystąpienia określonego indeksu od początku odwrotnej wyszukiwania |
23 | int lastIndexOf (String str) Zwraca określony podciąg w tym ciąg pierwszej z prawej strony wskaźnika występowania |
24 | int lastIndexOf (String str, int fromIndex ) Zwraca określony podciąg tego ciągu na ostatnim wystąpieniu w indeksie, począwszy od określonego indeksu odwrotnego wyszukiwania |
25 | int length () Zwraca długość tego łańcucha |
26 | logiczne mecze (regex String) Są informuje napis ten nie pasuje do podanego wyrażenia regularnego |
27 | wartość logiczna (Boolean ignoreCase regionMatches, int toffset , String inny, int, int len ooffset) Testy jeśli dwa regiony smyczkowe są równe |
28 | logiczne regionMatches (int toffset, String inny , int, int len ooffset) Testy jeśli dwa regiony smyczkowe są równe |
29 | String replace (char staryznak, char nowyznak ) Zwraca nowy ciąg znaków, który jest zastąpienie wszystkich staryznak ten ciąg z nowyznak uzyskane |
30 | replaceAll String (String regex, wymiana String Podciągu z danym ciągiem zastępczym zastępuje wszystkie pasujące do danego wyrażenia regularnego |
31 | String replaceFirst (String regex, wymiana String ) Pierwszy podciąg z danym wymiany Wymień ten łańcuch nie pasuje do podanego wyrażenia regularnego |
32 | String [] split (regex String) Według podanej dopasowywania wyrażeń regularnych podzielić ten ciąg |
33 | String [] split (regex String, int limitu) Zgodnie z podanym wyrażenia regularnego, aby podzielić ten ciąg |
34 | logiczna startswith (prefix String) Sprawdza czy ten ciąg rozpoczyna z określonym prefiksem |
35 | logiczna startswith (prefix String, int toffset ) Podciąg Test ten ciąg począwszy od określonego indeksu zaczyna z określonym prefiksem. |
36 | CharSequence podciąg (int beginIndex int endIndex ) Zwraca nową sekwencję znaków, który jest subsekwencję tej sekwencji |
37 | podciąg String (int beginIndex) Zwraca nowy ciąg, który jest podciąg tego komunikatu |
38 | podciąg String (int beginIndex int endIndex ) Zwraca nowy ciąg znaków, który jest podciąg tego komunikatu |
39 | char [] toCharArray () Konwertuje ten ciąg do nowej tablicy znaków |
40 | toLowerCase String () Korzystanie z domyślnych ustawień regionalnych przepisów w ten ciąg wszystkie znaki są konwertowane na małe litery |
41 | toLowerCase String (Locale locale) Biorąc pod uwagę locale zasady w ten ciąg wszystkie znaki są konwertowane na małe litery |
42 | String toString () Zwraca sam tego obiektu (co jest już łańcuch!) |
43 | toUpperCase String () Korzystanie z domyślnych ustawień regionalnych przepisów w ten ciąg wszystkie znaki są konwertowane na wielkie litery |
44 | String toUpperCase (Locale locale) Biorąc pod uwagę zasady określone w Locale ten ciąg wszystkie znaki są konwertowane na wielkie litery |
45 | Tapicerka String () Usuwa określony ciąg znaków od początku do końca spacje |
46 | static String valueOf (prymitywny typ danych x ) Zwraca ciąg znaków reprezentujący typ parametru |