Liigu peamise sisu juurde

Sõned

Sõnede võrdlus kahes keeles.

Sõne loomine

Python

Pythonis on sõne loomiseks mitu võimalust:

s = "tere" # kahekordsed jutumärgid
s = 'tere' # ühekordsed jutumärgid
# kolm jutumärki
s = """tere"""
s = '''tere'''
s = str("tere")

Kõik annavad sama tulemuse.
Kolme jutumärgiga eraldatud sõne korral saab sõnes kasutada ka reavahetusi.

s = """tere
siin
on
reavahetused"""

Java

Javas saab sõne luua vaid jutumärkide abil.

String s = "tere";
String s2 = new String("tere");

Reavahetust saab kasutada järgmiselt:

String s3 = "tere\nsiin\non\reavahetused";
String s4 = """Tere
siin
on
reavahetused""";

/*
* tere
* siin
* on
* reavahetused
*/

Sõnede ühendamine

Python

Pythonis sõne muuta ei saa.
"Muutmiseks" tuleb teha uus sõne. Sõnede ühendamiseks saab kasutada liitmist:

s = "üks" + "teine"
s = "üks" + " " + "teine"

Sõne ühendamine teist tüüpi väärtusega:

nr = 3
s = "number:" + str(nr)

Java

Javas ei saa sõne samuti muuta.
Sõnede ühendamine:

String s = "tere" + "tulemast";
String s2 = "tere " + "tulemast";

Javas saab sõnele numbreid liita mugavamalt:

int nr = 3;
String s = "Number: " + nr;

Sõnede võrdsuse võrdlemine

Python

Pythonis saab sõnesid võrrelda tavapärast võrdlusoperaatoriga (==).

if str1 == str2:
print("str == str2")

Java

Javas annab objektide (String on objekt) võrdlemine võrdlusoperaatoriga (==) tulemuseks selle, kas kaks objekti on täpselt samad.
Üldiselt me pigem tahame võrrelda, kas sõnede sisud on samad. Selleks kasutame sõne meetodit equals.

if (str1.equals(str2)) {
System.out.println("str1 and str2 are equal");
}

Võrdluseks järgmine kood:

String s1 = new String("aa");
String s2 = new String("aa");
if (s1 == s2) {
System.out.println("s1 == s2");
}

Siin tingimus s1 == s2 ei kehti.

Sõnede tähestikuline võrdlemine

Python

Pythonis saab võrdlusoperatooritega (<, <=, >=, >) kontrollida, kas üks sõne on teisest tähestikus eespool.

s1 = "abc"
s2 = "bc"
if s1 < s2:
print("s1 < s2")

Java

Javas saab sarnaselt kontrollida:

String s1 = "abc";
String s2 = "bc";
if (s1.compareTo(s2) < 0) {
System.out.println("s1 < s2");
}

compareTo tagastab negatiivse arvu, kui sõne, millest meetod välja kutsuti (näites s1), eelneb tähestikus sõnele, mis on argumendiks (näites s2).

Sõne funktsioonid

Sõne pikkus

Python

s = "teretulemast"
len(s) # 12

Java

String s = "teretulemast";
s.length(); // 12

Sõne viilutamine

Python

s = "teretulemast"
s[4:] # tulemast
s[:4] # tere
s[5:7] # ul
s[-3:] # ast

Java

String s = "teretulemast";
s.substring(4);
s.substring(0, 4);
s.substring(5, 7);
s.substring(s.length() - 3);

Üksiku tähe leidmine

Python

Pythonis üks sümbol sõnest on sõne (mille pikkus on 1):

s = "tere"
first = s[0] # "t"
c = 'a' # just a string

Java

Javas on üks sümbol sõnest char tüüpi. char tüüpi väärtus kirjutatakse ühekordsete jutumärkide (ülakomad) vahele.

String s = "tere";
char first = s.charAt(0); // 't'
char c = 'a';

Alamsõne indeksi leidmine

Python

s = "teretulemast"
s.find("tere") # 0
s.find("e") # 1
s.find("e", 4) # 7
s.find("o") # -1

Java

String s = "teretulemast";
s.indexOf("tere"); // 0
s.indexOf("e"); // 1
s.indexOf("e", 4); // 7
s.indexOf("o"); // -1

Upper-/lowercase

Python

a = "RAINbow"
a.lower() # "rainbow"
a.upper() # "RAINBOW"

Java

String a = "RAINbow";
a.toLowerCase(); // "rainbow"
a.toUpperCase(); // "RAINBOW"