Cara Mbandhingake Senar ing Jawa

Kanggo mbandhingake String kanggo kesetaraan, sampeyan kudu nggunakake obyek String equals utawa equalsIgnoreCase cara. Kita uga bakal ngerti sebabe ora nggunakake == operator kanggo mbandhingake senar.



Mbandhingake String karo metode sing padha ()

Yen kita kudu mbandhingake rong senar ing jawa lan uga peduli karo casing saka senar, kita bisa nggunakake equals() cara

Contone, cuplikan ing ngisor iki bakal nemtokake manawa rong conto String padha karo kabeh karakter kalebu casing:


public class CompareTwoStrings {
public static void main(String[] args) {
String firstString = 'Test123';
String secondString = 'Test' + 123;
String thirdString = 'TEST123';

if (firstString.equals(secondString)) {

System.out.println('first and second strings are equal');
}

if (firstString.equals(thirdString)) {

System.out.println('first and third string are equal');
}
} }

Output:

first and second strings are equal Cathetan:Pratelan cetak nomer loro ora bisa ditindakake amarga casing firstString lan thirdString ora cocog.

Mbandhingake Senar kanthi metode padha karoIgnoreCase ()

Yen kita kudu mbandhingake rong senar ing jawa nanging ora preduli babagan casing senar kasebut, kita bisa nggunakake equalsIgnoreCase() cara


Contone, ing cuplikan kode ing ndhuwur, yen diganti .equals() karo .equalsIgnoreCase() cara, banjur loro-lorone pratelan dicithak:

public class CompareTwoStrings {
public static void main(String[] args) {
String firstString = 'Test123';
String secondString = 'Test' + 123;
String thirdString = 'TEST123';

if (firstString.equalsIgnoreCase(secondString)) {

System.out.println('first and second strings are equal');
}

if (firstString.equalsIgnoreCase(thirdString)) {

System.out.println('first and third string are equal');
}
} }

Output:

first and second strings are equal
first and third string are equal

Gegandhengan:



Aja nggunakake operator == kanggo mbandhingake Senar

Cathetan:Nalika mbandhingake rong senar ing jawa, kita ora kudu nggunakake == utawa ! = operator.

Operator kasebut bener-bener nyoba referensi, lan amarga sawetara obyek String bisa makili String sing padha, bisa menehi wangsulan sing salah.


Nanging, gunakake String.equals(Object) cara, sing bakal mbandhingake obyek String adhedhasar regane.

public class CompareTwoStrings {
public static void main(String[] args) {
String firstString = 'Test123';
String secondString = 'Test123';
String thirdString = new String('Test123');

if (firstString == secondString) {

System.out.println('first and second strings are equal');
}

if (firstString == thirdString) {

System.out.println('first and third strings are equal');
}
} }

Output:

first and second strings are equal Cathetan:Pratelan cetakan nomer loro ora bisa dileksanakake.

Mbandhingake String Kanthi Nilai-Nilai Konstan

Nalika mbandhingake String karo nilai sing tetep, sampeyan bisa nyelehake nilai tetep ing sisih kiwa sing padha kanggo mesthekake yen ora entuk NullPointerException yen String liyane ora ana gunane.

Contone:


'baz'.equals(foo)

Nalika foo.equals('baz') bakal mbuwang NullPointerException yen foo batal, 'baz'.equals(foo) bakal evaluasi menyang false.

Alternatif sing luwih bisa diwaca yaiku nggunakake Objects.equals(), sing ora bakal mriksa kabeh parameter:

tuladhane Objects.equals(foo, 'baz').



Mbandhingake Senar ing Statement Switch

Minangka Java 1.7, bisa mbandhingake variabel String karo literal ing pratelan switch. Priksa manawa String ora batal, yen ora bakal terus mbuwang NullPointerException. Nilai dibandhingake nggunakake String.equals, yaiku kasus sensitif.


public class CompareTwoStrings {
public static void main(String[] args) {
String stringToSwitch = 'A';


switch (stringToSwitch) {

case 'a':


System.out.println('a');


break;




case 'A':


System.out.println('A'); //the code goes here


break;




case 'B':


System.out.println('B');


break;




default:


break;
}
} }

Kesimpulan

Ing kiriman iki, kita nerangake cara mbandhingake senar ing jawa karo conto kode. Nalika nggawe tali senar, kita kudu nggunakake .equals() lan nalika casing ora penting, mula kita kudu nggunakake .equalsIgnoreCase().

Kajaba iku, kita aja nggunakake == operator kanggo mbandhingake senar, minangka == operator mriksa referensi lan dudu regane.