I dette program lærer du at sammenligne to strenge i Java.
For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:
- Java-streng
- Java-operatører
Eksempel 1: Sammenlign to strenge
public class CompareStrings ( public static void main(String() args) ( String style = "Bold"; String style2 = "Bold"; if(style == style2) System.out.println("Equal"); else System.out.println("Not Equal"); ) )
Produktion
Lige
I ovenstående program har vi to strenge stil og stil2. Vi bruger simpelthen lig med operatøren ( ==
) for at sammenligne de to strenge, som sammenligner værdien Fed til Fed og udskriver Equal .
Eksempel 2: Sammenlign to strenge ved hjælp af lig med ()
public class CompareStrings ( public static void main(String() args) ( String style = new String("Bold"); String style2 = new String("Bold"); if(style.equals(style2)) System.out.println("Equal"); else System.out.println("Not Equal"); ) )
Produktion
Lige
I ovenstående program, har vi to strenge navngivne stil og style2 både indeholder den samme verden Fed .
Vi har dog brugt String
konstruktør til at oprette strengene. For at sammenligne disse strenge i Java skal vi bruge equals()
metoden til strengen.
Du bør ikke bruge ==
(lighedsoperator) til at sammenligne disse strenge, fordi de sammenligner strengens reference, dvs. om de er det samme objekt eller ej.
På den anden side equals()
sammenligner metoden, om værdien af strengene er ens, og ikke selve objektet.
Hvis du i stedet ændrer programmet til at bruge lighedsoperator, får du ikke lige som vist i programmet nedenfor.
Eksempel 3: Sammenlign to strengobjekter ved hjælp af == (Fungerer ikke)
public class CompareStrings ( public static void main(String() args) ( String style = new String("Bold"); String style2 = new String("Bold"); if(style == style2) System.out.println("Equal"); else System.out.println("Not Equal"); ) )
Produktion
Ikke lige
Eksempel 4: Forskellige måder at sammenligne to strenge på
Her er den strengesammenligning, der er mulig i Java.
public class CompareStrings ( public static void main(String() args) ( String style = new String("Bold"); String style2 = new String("Bold"); boolean result = style.equals("Bold"); // true System.out.println(result); result = style2 == "Bold"; // false System.out.println(result); result = style == style2; // false System.out.println(result); result = "Bold" == "Bold"; // true System.out.println(result); ) )
Produktion
sandt falsk falsk sandt