1. Konkatenacja (łączenie ciągów znaków)
Jest taka zgrabna i prosta rzecz, którą możesz zrobić z ciągami znaków w Javie: możesz je skleić. Ta operacja nazywa się konkatenacją . Oto jak to zapamiętaliśmy: Con-Cat-en-Nation. Nazywa się to często „łączeniem strun” lub „łączeniem strun”.
Aby połączyć dwie linie, użyj +znaku. To jest bardzo łatwe:
"value1" + "value2"
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
namezawiera ciągSteveSteve |
|
cityzawiera ciągNew YorkSteve |
|
messagezawiera ciągHello! Steve |
I oczywiście możesz jednocześnie łączyć wiele ciągów znaków, a także łączyć ciągi znaków i zmienne.
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
namezawiera ciąg Stevecityzawiera ciąg New Yorkmessagezawiera ciągHello!New YorkSteveNew York |
W ostatnim przykładzie widać, że tekst w pliku message jest trudny do odczytania, ponieważ brakuje w nim spacji. Aby wskazać jedną lub więcej spacji, wystarczy napisać je w kodzie, a następnie ująć w cudzysłowy. To łatwiejsze niż się wydaje:
" "
Nawiasem mówiąc, jeśli nie wstawisz spacji między cudzysłowy (tj. napiszesz dwa podwójne cudzysłowy z rzędu), otrzymasz tak zwany „pusty ciąg”:
""
Z jednej strony wydaje się, że mamy sznurek. Ale z drugiej strony, kiedy wyświetlamy ten ciąg, nic nie jest wyświetlane. A kiedy połączymy go z innymi strunami, nic się nie dzieje. To trochę jak zero dodatkowo, tylko dla stringów.
2. Konwersja na ciąg znaków
Jak wspomniano powyżej, programiści Java zadbali o to, aby absolutnie każdą zmienną, obiekt i wyrażenie w Javie można było przekonwertować na Stringtyp.
Co więcej, dzieje się to automatycznie, gdy połączymy a Stringz jakimś innym typem . Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
namezawiera ciągSteve5 |
|
cityzawiera ciąg5New York5 |
|
messagezawiera ciągHello! 10Yo |
We wszystkich trzech przypadkach spokojnie połączyliśmy inti Stringzmienne, a wynikiem jest zawsze String.
Nie można wykonywać operacji arytmetycznych na Stringtypie. Nawet jeśli cały ciąg składa się z cyfr.
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
namezawiera ciąg15 |
|
cityzawiera ciąg595 |
|
messagezawiera ciąg1010 |
Operacje plus są wykonywane od lewej do prawej, więc wynik może być nieco nieoczekiwany. Przykład:
| Oświadczenie | Notatka |
|---|---|
|
namezawiera ciąg1015 |
((a + a) + "1") + a
3. Konwersja ciągu znaków na liczbę
Konwersja liczby na ciąg znaków w Javie jest tak prosta, jak połączenie jej z pustym ciągiem znaków:
String str = "" + number;
Ale co, jeśli musisz przekonwertować ciąg znaków na liczbę? Cóż, nie każdy ciąg można przekonwertować na liczbę. Ale jeśli ciąg składa się tylko z liczb, możesz. Jest na to specjalna metoda w Integerklasie.
Odpowiednie oświadczenie wygląda następująco:
int x = Integer.parseInt(string);
Gdzie jest deklaracją zmiennej całkowitej, a jest ciągiem reprezentującym liczbę (tj. ciągiem składającym się z cyfr).int xxstring
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
numberzawiera numer 123; |
|
numberzawiera numer321 |
|
numberzawiera numer3210 |
|
To się nie skompiluje: zmienna to an int, ale wartość to aString |
4. Niektóre metody pracy z ciągami znaków
I na koniec chciałbym porozmawiać o kilku metodach klasy String.
length()metoda
Metoda length() pozwala uzyskać długość napisu , czyli ile znaków zawiera.
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
countzawiera wartość4 |
|
countzawiera wartość0 |
|
countzawiera wartość5 |
Możesz wywołać te metody na wszystkim, czego typem jest String, nawet na wyrażeniu:
(name + 12).length()
length()metody na wyrażeniu, którego typem jest
String
toLowerCase()metoda
Metoda toLowerCase() pozwala na konwersję wszystkich znaków w łańcuchu na małe litery :
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
name2zawiera ciągrom |
|
namezawiera pusty ciąg |
|
name2zawiera ciągrom123 |
toUpperCase()metoda
Metoda toUpperCase() pozwala na konwersję wszystkich znaków w łańcuchu na wielkie litery :
Przykłady:
| Oświadczenie | Notatka |
|---|---|
|
name2zawiera ciągROM |
|
name2zawiera ciągROM123 |
GO TO FULL VERSION