JavaRush /ื‘ืœื•ื’ Java /Random-HE /ืฉื•ื•ื” ื‘-Java ื•-String compare - ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช

ืฉื•ื•ื” ื‘-Java ื•-String compare - ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช

ืคื•ืจืกื ื‘ืงื‘ื•ืฆื”
ืฉืœื•ื! ื”ื™ื•ื ื ื“ื‘ืจ ืขืœ ื ื•ืฉื ืžืื•ื“ ื—ืฉื•ื‘ ื•ืžืขื ื™ื™ืŸ, ื›ืœื•ืžืจ ื”ืฉื•ื•ืืช ืื•ื‘ื™ื™ืงื˜ื™ื ื–ื” ืœื–ื” equals() ื‘ื’'ืื•ื•ื”. ื•ืื›ืŸ, ื‘ืื™ืœื• ืžืงืจื™ื ื‘ื’'ืื•ื•ื” ืื•ื‘ื™ื™ืงื˜ A ื™ื”ื™ื” ืฉื•ื•ื” ืœืื•ื‘ื™ื™ืงื˜ B ? ืฉื•ื•ื” ื•ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช - 1ื‘ื•ืื• ื ื ืกื” ืœื›ืชื•ื‘ ื“ื•ื’ืžื”:
public class Car {

   String model;
   int maxSpeed;

   public static void main(String[] args) {

       Car car1 = new Car();
       car1.model = "Ferrari";
       car1.maxSpeed = 300;

       Car car2 = new Car();
       car2.model = "Ferrari";
       car2.maxSpeed = 300;

       System.out.println(car1 == car2);
   }
}
ืคืœื˜ ืžืกื•ืฃ:

false
ื‘ืกื“ืจ, ืชืคืกื™ืง. ืžื“ื•ืข, ื‘ืขืฆื, ืฉืชื™ ื”ืžื›ื•ื ื™ื•ืช ื”ืœืœื• ืื™ื ืŸ ืฉื•ื•ืช? ื ืชื ื• ืœื”ื ืืช ืื•ืชื ืžืืคื™ื™ื ื™ื, ืื‘ืœ ื”ืชื•ืฆืื” ืฉืœ ื”ื”ืฉื•ื•ืื” ืฉืงืจื™ืช. ื”ืชืฉื•ื‘ื” ืคืฉื•ื˜ื”. ื”ืื•ืคืจื˜ื•ืจ ==ืžืฉื•ื•ื” ืœื ืžืืคื™ื™ื ื™ื ืฉืœ ืื•ื‘ื™ื™ืงื˜ื™ื, ืืœื ืงื™ืฉื•ืจื™ื. ื’ื ืื ืœืฉื ื™ ืื•ื‘ื™ื™ืงื˜ื™ื ื™ืฉ 500 ืžืืคื™ื™ื ื™ื ื–ื”ื™ื, ืชื•ืฆืืช ื”ื”ืฉื•ื•ืื” ืขื“ื™ื™ืŸ ืชื”ื™ื” ืฉืงืจื™ืช. ืื—ืจื™ ื”ื›ืœ, ืงื™ืฉื•ืจื™ื car1ืžืฆื‘ื™ืขื™ื car2 ืขืœ ืฉื ื™ ืื•ื‘ื™ื™ืงื˜ื™ื ืฉื•ื ื™ื , ืœืฉืชื™ ื›ืชื•ื‘ื•ืช ืฉื•ื ื•ืช. ืชืืจื• ืœืขืฆืžื›ื ืžืฆื‘ ืขื ื”ืฉื•ื•ืื” ื‘ื™ืŸ ืื ืฉื™ื. ื›ื ืจืื” ื™ืฉ ืื“ื ื‘ืขื•ืœื ืฉื™ืฉ ืœื• ืื•ืชื• ืฉื, ืฆื‘ืข ืขื™ื ื™ื™ื, ื’ื™ืœ, ื’ื•ื‘ื”, ืฆื‘ืข ืฉื™ืขืจ ื•ื›ื•' ื›ืžื•ืš. ื›ืœื•ืžืจ, ืืชื ื“ื•ืžื™ื ื‘ื”ืจื‘ื” ืžื•ื‘ื ื™ื, ืื‘ืœ ืขื“ื™ื™ืŸ ืืชื ืœื ืชืื•ืžื™ื, ื•ื‘ืขื™ืงืจ ืœื ืื•ืชื• ืื“ื. ืฉื•ื•ื” ื•ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช - 2ื”ืื•ืคืจื˜ื•ืจ ืžื—ื™ืœ ื‘ืขืจืš ืืช ืื•ืชื• ื”ื™ื’ื™ื•ืŸ ==ื›ืืฉืจ ืื ื• ืžืฉืชืžืฉื™ื ื‘ื• ื›ื“ื™ ืœื”ืฉื•ื•ืช ื‘ื™ืŸ ืฉื ื™ ืื•ื‘ื™ื™ืงื˜ื™ื. ืื‘ืœ ืžื” ืื ืืชื” ืฆืจื™ืš ื”ื™ื’ื™ื•ืŸ ืฉื•ื ื” ื‘ืชื•ื›ื ื™ืช ืฉืœืš? ืœื“ื•ื’ืžื”, ืื ื”ืชื•ื›ื ื™ืช ืฉืœืš ืžื“ืžื” ื ื™ืชื•ื— DNA. ืขืœื™ื” ืœื”ืฉื•ื•ืช ืืช ืงื•ื“ ื”-DNA ืฉืœ ืฉื ื™ ืื ืฉื™ื ื•ืœืงื‘ื•ืข ืฉื”ื ืชืื•ืžื™ื.
public class Man {

   int dnaCode;

   public static void main(String[] args) {

       Man man1 = new Man();
       man1.dnaCode = 1111222233;

       Man man2 = new Man();
       man2.dnaCode = 1111222233;

       System.out.println(man1 == man2);
   }
}
ืคืœื˜ ืžืกื•ืฃ:

false
ื–ื” ื”ื’ื™ื•ื ื™ ืฉื”ืชื•ืฆืื” ื”ื™ื™ืชื” ื–ื”ื” (ืื—ืจื™ ื”ื›ืœ, ืœื ืฉื™ื ื™ื ื• ื›ืœื•ื), ืื‘ืœ ืขื›ืฉื™ื• ืื ื—ื ื• ืœื ืžืจื•ืฆื™ื ืžื–ื”! ื•ืื›ืŸ, ื‘ื—ื™ื™ื ื”ืืžื™ืชื™ื™ื, ื ื™ืชื•ื— DNA ื”ื•ื ืขืจื•ื‘ื” ืฉืœ ืžืื” ืื—ื•ื– ืœื›ืš ืฉืื ื• ืขื•ืžื“ื™ื ื‘ืคื ื™ ืชืื•ืžื™ื. ืื‘ืœ ื”ืชื•ื›ื ื™ืช ื•ื”ืžืคืขื™ืœ ืฉืœื ื• ==ืื•ืžืจื™ื ืœื ื• ืื—ืจืช. ื›ื™ืฆื“ ื ื•ื›ืœ ืœืฉื ื•ืช ื”ืชื ื”ื’ื•ืช ื–ื• ื•ืœื•ื•ื“ื ืฉืื ื‘ื“ื™ืงื•ืช ื”-DNA ืชื•ืืžื•ืช, ื”ืชื•ื›ื ื™ืช ืชืคื™ืง ืืช ื”ืชื•ืฆืื” ื”ื ื›ื•ื ื”? ืœืฉื ื›ืš ื ื•ืฆืจื” ืฉื™ื˜ื” ืžื™ื•ื—ื“ืช ื‘-Java - equals() .

ืฉื™ื˜ืช Equals() ื‘-Java

ื›ืžื• ื”ืฉื™ื˜ื” toString()ืฉื“ื™ื‘ืจื ื• ืขืœื™ื” ืงื•ื“ื, equals() ืฉื™ื™ื›ืช ืœืžื—ืœืงื”, Objectื”ืžื—ืœืงื” ื”ื—ืฉื•ื‘ื” ื‘ื™ื•ืชืจ ื‘ื’'ืื•ื•ื”, ืžืžื ื” ื ื’ื–ืจื•ืช ื›ืœ ื”ืžื—ืœืงื•ืช ื”ืื—ืจื•ืช. ืขื ื–ืืช, equals() ืขืฆืžื• ืœื ื™ืฉื ื” ืืช ื”ื”ืชื ื”ื’ื•ืช ืฉืœ ื”ืชื•ื›ื ื™ืช ืฉืœื ื• ื‘ืฉื•ื ืื•ืคืŸ:
public class Man {

   String dnaCode;

   public static void main(String[] args) {

       Man man1 = new Man();
       man1.dnaCode = "111122223333";

       Man man2 = new Man();
       man2.dnaCode = "111122223333";

       System.out.println(man1.equals(man2));
   }
}
ืคืœื˜ ืžืกื•ืฃ:

false
ื‘ื“ื™ื•ืง ืื•ืชื” ืชื•ืฆืื”, ืื– ืœืžื” ื™ืฉ ืฆื•ืจืš ื‘ืฉื™ื˜ื” ื”ื–ื•? :/ ื–ื” ืคืฉื•ื˜. ื”ืขื•ื‘ื“ื” ื”ื™ื ืฉื›ืขืช ื”ืฉืชืžืฉื ื• ื‘ืฉื™ื˜ื” ื–ื• ื›ืคื™ ืฉื”ื™ื ืžื™ื•ืฉืžืช ื‘ืžื—ืœืงื” ืขืฆืžื” Object. ื•ืื ื ื™ื›ื ืก ืœืงื•ื“ ื”ืžื—ืœืงื” Objectื•ื ืจืื” ืื™ืš ื”ืฉื™ื˜ื” ื”ื–ื• ืžื™ื•ืฉืžืช ื‘ื• ื•ืžื” ื”ื™ื ืขื•ืฉื”, ื ืจืื”:
public boolean equals(Object obj) {
   return (this == obj);
}
ื–ื• ื”ืกื™ื‘ื” ืœื›ืš ืฉื”ืชื ื”ื’ื•ืช ื”ืชื•ื›ื ื™ืช ืฉืœื ื• ืœื ื”ืฉืชื ืชื”! ื‘ืชื•ืš ืฉื™ื˜ืช equals() ืฉืœ ื”ืžื—ืœืงื” Objectื ืžืฆืืช ืื•ืชื” ื”ืฉื•ื•ืืช ื”ืคื ื™ื•ืช, ==. ืื‘ืœ ื”ื—ื•ื›ืžื” ืฉืœ ื”ืฉื™ื˜ื” ื”ื–ื• ื”ื™ื ืฉืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืขืงื•ืฃ ืื•ืชื”. ื“ืจื™ืกื” ืคื™ืจื•ืฉื” ื›ืชื™ื‘ืช ืฉื™ื˜ืช equals() ืžืฉืœืš ื‘ื›ื™ืชื” ืฉืœื ื• Manื•ืœื’ืจื•ื ืœื” ืœื”ืชื ื”ื’ ื›ืžื• ืฉืื ื—ื ื• ืจื•ืฆื™ื! ื›ืขืช ืื™ื ื ื• ืžืฉื•ื›ื ืขื™ื ืฉื”ืžื—ืื” man1.equals(man2)ื‘ืขืฆื ืขื•ืฉื” ืืช ืื•ืชื• ื”ื“ื‘ืจ ื›ืžื• man1 == man2. ื”ื ื” ืžื” ืฉื ืขืฉื” ื‘ืžืฆื‘ ื–ื”:
public class Man {

   int dnaCode;

   public boolean equals(Man man) {
       return this.dnaCode ==  man.dnaCode;
   }

   public static void main(String[] args) {

       Man man1 = new Man();
       man1.dnaCode = 1111222233;

       Man man2 = new Man();
       man2.dnaCode = 1111222233;

       System.out.println(man1.equals(man2));

   }
}
ืคืœื˜ ืžืกื•ืฃ:

true
ืชื•ืฆืื” ืฉื•ื ื” ืœื—ืœื•ื˜ื™ืŸ! ืขืœ ื™ื“ื™ ื›ืชื™ื‘ืช ืฉื™ื˜ืช equals() ืžืฉืœื ื• ื‘ืžืงื•ื ื”ืฉื™ื˜ื” ื”ืกื˜ื ื“ืจื˜ื™ืช, ื”ืฉื’ื ื• ืืช ื”ื”ืชื ื”ื’ื•ืช ื”ื ื›ื•ื ื”: ืขื›ืฉื™ื• ืื ืœืฉื ื™ ืื ืฉื™ื ื™ืฉ ืืช ืื•ืชื• ืงื•ื“ DNA, ื”ืชื•ื›ื ื™ืช ืื•ืžืจืช ืœื ื•: "ื ื™ืชื•ื— DNA ื”ืจืื” ืฉื”ื ืชืื•ืžื™ื" ื•ืžื—ื–ื™ืจื” ืืžืช! ืขืœ ื™ื“ื™ ื“ืจื™ืกืช ื”ืžืชื•ื“ื” equals() ื‘ืžื—ืœืงื•ืช ืฉืœืš, ืชื•ื›ืœ ืœื™ืฆื•ืจ ื‘ืงืœื•ืช ืืช ื”ืœื•ื’ื™ืงื” ื”ื“ืจื•ืฉื” ืœื”ืฉื•ื•ืืช ืื•ื‘ื™ื™ืงื˜ื™ื. ื ื’ืขื ื• ื‘ื”ืฉื•ื•ืืช ื—ืคืฆื™ื ืจืง ื‘ืžื•ื ื—ื™ื ื›ืœืœื™ื™ื. ืขื“ื™ื™ืŸ ืชื”ื™ื” ืœื ื• ื”ืจืฆืื” ื’ื“ื•ืœื” ื ืคืจื“ืช ื‘ื ื•ืฉื ื–ื” (ืชื•ื›ืœ ืœืงืจื•ื ืื•ืชื” ื‘ืžื”ื™ืจื•ืช ืขื›ืฉื™ื•, ืื ืืชื” ืžืขื•ื ื™ื™ืŸ).

String compare ื‘-Java - String comparison

ืžื“ื•ืข ืื ื• ืžืชื™ื™ื—ืกื™ื ืœื”ืฉื•ื•ืื•ืช ืžื—ืจื•ื–ื•ืช ื‘ื ืคืจื“ ืžื›ืœ ื”ืฉืืจ? ื•ื‘ื›ืŸ, ืœืžืขืฉื”, ืฉื•ืจื•ืช ื‘ืชื›ื ื•ืช ื”ืŸ ืกื™ืคื•ืจ ืื—ืจ ืœื’ืžืจื™. ืจืืฉื™ืช, ืื ืœื•ืงื—ื™ื ืืช ื›ืœ ืชื•ื›ื ื™ื•ืช ื”ื’'ืื•ื•ื” ืฉื ื›ืชื‘ื• ืขืœ ื™ื“ื™ ื”ืื ื•ืฉื•ืช, ื›-25% ืžื”ืื•ื‘ื™ื™ืงื˜ื™ื ื‘ื”ืŸ ืžื•ืจื›ื‘ื™ื ืžื”ืŸ. ืœื›ืŸ, ื ื•ืฉื ื–ื” ื—ืฉื•ื‘ ืžืื•ื“. ืฉื ื™ืช, ืชื”ืœื™ืš ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช ื”ื•ื ื‘ืืžืช ืฉื•ื ื” ืžืื•ื‘ื™ื™ืงื˜ื™ื ืื—ืจื™ื. ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ื“ื•ื’ืžื” ืคืฉื•ื˜ื”:
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = new String("JavaRush is the best site to learn Java!");
       System.out.println(s1 == s2);
   }
}
ืคืœื˜ ืžืกื•ืฃ:

false
ืื‘ืœ ืœืžื” ืฉืงืจ? ื”ืฉื•ืจื•ืช ื–ื”ื•ืช ืœื—ืœื•ื˜ื™ืŸ, ืžื™ืœื” ื‘ืžื™ืœื” :/ ืืคืฉืจ ืœื”ื ื™ื—: ื–ื” ื‘ื’ืœืœ ืฉื”ืื•ืคืจื˜ื•ืจ == ืžืฉื•ื•ื” ื”ืคื ื™ื•ืช! ืื—ืจื™ ื”ื›ืœ, ื™ืฉ s1ืœื”ื s2ื›ืชื•ื‘ื•ืช ืฉื•ื ื•ืช ื‘ื–ื™ื›ืจื•ืŸ. ืื ื”ืžื—ืฉื‘ื” ื”ื–ื• ืขืœืชื” ื‘ื“ืขืชืš, ืื– ื‘ื•ืื• ื ื—ื–ื•ืจ ืขืœ ื”ื“ื•ื’ืžื” ืฉืœื ื•:
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = "JavaRush is the best site to learn Java!";
       System.out.println(s1 == s2);
   }
}
ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ื’ื ืฉื ื™ ืงื™ืฉื•ืจื™ื, ืื‘ืœ ื”ืชื•ืฆืื” ื”ืฉืชื ืชื” ืœื”ื™ืคืš: ืคืœื˜ ืžืกื•ืฃ:

true
ืžื‘ื•ืœื‘ืœ ืœื’ืžืจื™? :) ื‘ื•ื ื ื‘ื™ืŸ ืืช ื–ื”. ื”ืžืคืขื™ืœ ==ืœืžืขืฉื” ืžืฉื•ื•ื” ื›ืชื•ื‘ื•ืช ื‘ื–ื™ื›ืจื•ืŸ. ื›ืœืœ ื–ื” ืชืžื™ื“ ืขื•ื‘ื“ ื•ืื™ืŸ ืฆื•ืจืš ืœื”ื˜ื™ืœ ื‘ื• ืกืคืง. ื”ืžืฉืžืขื•ืช ื”ื™ื ืฉืื s1 == s2ื”ื•ื ืžื—ื–ื™ืจ ืืžืช, ืœืฉืชื™ ื”ืžื—ืจื•ื–ื•ืช ื”ืœืœื• ื™ืฉ ืื•ืชื” ื›ืชื•ื‘ืช ื‘ื–ื™ื›ืจื•ืŸ. ื•ืื›ืŸ ื›ืš! ื–ื” ื”ื–ืžืŸ ืœื”ื›ื™ืจ ืื–ื•ืจ ื–ื™ื›ืจื•ืŸ ืžื™ื•ื—ื“ ืœืื—ืกื•ืŸ ืžื™ืชืจื™ื - ืžืื’ืจ ื”ืžื™ืชืจื™ื ( String pool) ืฉื•ื•ื” ื•ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช - 3ืžืื’ืจ ื”ืžื™ืชืจื™ื ื”ื•ื ืื–ื•ืจ ืœืื—ืกื•ืŸ ื›ืœ ืขืจื›ื™ ื”ืžื™ืชืจื™ื ืฉืืชื” ื™ื•ืฆืจ ื‘ืชื•ื›ื ื™ืช ืฉืœืš. ื‘ืฉื‘ื™ืœ ืžื” ื”ื•ื ื ื•ืฆืจ? ื›ืคื™ ืฉื”ื•ื–ื›ืจ ืงื•ื“ื ืœื›ืŸ, ืžื™ืชืจื™ื ืชื•ืคืกื™ื ื—ืœืง ืขืฆื•ื ืžื›ืœ ื”ืื•ื‘ื™ื™ืงื˜ื™ื. ื‘ื›ืœ ืชื•ื›ื ื™ืช ื’ื“ื•ืœื” ื ื•ืฆืจื•ืช ื”ืจื‘ื” ืฉื•ืจื•ืช. ืขืœ ืžื ืช ืœื—ืกื•ืš ื‘ื–ื™ื›ืจื•ืŸ ื–ื” ืžื” ืฉืฆืจื™ืš String Pool- ืฉื ืžื•ื ื—ืช ืฉื•ืจื” ืขื ื”ื˜ืงืกื˜ ื”ื“ืจื•ืฉ, ื•ื‘ืขืชื™ื“ ืงื™ืฉื•ืจื™ื ื—ื“ืฉื™ื ืฉื ื•ืฆืจื• ืžืชื™ื™ื—ืกื™ื ืœืื•ืชื• ืื–ื•ืจ ื–ื™ื›ืจื•ืŸ, ืื™ืŸ ืฆื•ืจืš ืœื”ืงืฆื•ืช ื–ื™ื›ืจื•ืŸ ื ื•ืกืฃ ื‘ื›ืœ ืคืขื. ื‘ื›ืœ ืคืขื ืฉืืชื” ื›ื•ืชื‘ String = โ€œ........โ€, ื”ืชื•ื›ื ื” ื‘ื•ื“ืงืช ืื ื™ืฉ ืฉื•ืจื” ืขื ื˜ืงืกื˜ ื›ื–ื” ื‘ืžืื’ืจ ื”ืžื—ืจื•ื–ื•ืช. ืื ื™ืฉ, ืœื ื™ื™ื•ื•ืฆืจ ื—ื“ืฉ. ื•ื”ืงื™ืฉื•ืจ ื”ื—ื“ืฉ ื™ืฆื‘ื™ืข ืขืœ ืื•ืชื” ื›ืชื•ื‘ืช ื‘ืžืื’ืจ ื”ืžื—ืจื•ื–ื•ืช ืฉื‘ื• ื”ืžื—ืจื•ื–ืช ื”ื–ื• ืžืื•ื—ืกื ืช. ืœื›ืŸ, ื›ืฉื›ืชื‘ื ื• ื‘ืชื•ื›ื ื™ืช
String s1 = "JavaRush is the best site to learn Java!";
String s2 = "JavaRush is the best site to learn Java!";
ื”ืงื™ืฉื•ืจ s2ืžืฆื‘ื™ืข ื‘ื“ื™ื•ืง ืœืื•ืชื• ืžืงื•ื ื›ืžื• s1. ื”ืคืงื•ื“ื” ื”ืจืืฉื•ื ื” ื™ืฆืจื” ืฉื•ืจื” ื—ื“ืฉื” ื‘ืžืื’ืจ ื”ืžื—ืจื•ื–ื•ืช ืขื ื”ื˜ืงืกื˜ ืฉื”ื™ื™ื ื• ืฆืจื™ื›ื™ื, ื•ื›ืืฉืจ ื”ื’ื™ืขื” ืœืฉื ื™ื™ื”, ื”ื™ื ืคืฉื•ื˜ ื”ืชื™ื™ื—ืกื” ืœืื•ืชื• ืื–ื•ืจ ื–ื™ื›ืจื•ืŸ ื›ืžื• s1. ืืชื” ื™ื›ื•ืœ ืœื™ืฆื•ืจ ืœืคื—ื•ืช 500 ืฉื•ืจื•ืช ื ื•ืกืคื•ืช ืขื ืื•ืชื• ื˜ืงืกื˜, ื”ืชื•ืฆืื” ืœื ืชืฉืชื ื”. ืชืคืกื™ืง. ืื‘ืœ ืžื“ื•ืข ืื ื›ืŸ ื”ื“ื•ื’ืžื” ื”ื–ื• ืœื ืขื‘ื“ื” ืขื‘ื•ืจื ื• ืงื•ื“ื ืœื›ืŸ?
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = new String("JavaRush is the best site to learn Java!");
       System.out.println(s1 == s2);
   }
}
ืื ื™ ื—ื•ืฉื‘, ืื™ื ื˜ื•ืื™ื˜ื™ื‘ื™ืช, ืืชื” ื›ื‘ืจ ืžื ื—ืฉ ืžื” ื”ืกื™ื‘ื” :) ื ืกื” ืœื ื—ืฉ ืœืคื ื™ ืฉืชืงืจื ืขื•ื“. ืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ืฉืฉื ื™ ื”ืงื•ื•ื™ื ื”ืœืœื• ื ื•ืฆืจื• ื‘ืฆื•ืจื” ืฉื•ื ื”. ื”ืื—ื“ ื”ื•ื ื‘ืขื–ืจืช ื”ืžืคืขื™ืœ new, ื•ื”ืฉื ื™ ื‘ืœืขื“ื™ื•. ื–ื• ื‘ื“ื™ื•ืง ื”ืกื™ื‘ื”. ื”ืื•ืคืจื˜ื•ืจ ื”ื—ื“ืฉ, ื‘ืขืช ื™ืฆื™ืจืช ืื•ื‘ื™ื™ืงื˜, ืžืงืฆื” ืขื‘ื•ืจื• ืื–ื•ืจ ื—ื“ืฉ ื‘ื–ื™ื›ืจื•ืŸ ื‘ื›ื•ื— . ื•ื”ืฉื•ืจื” ืฉื ื•ืฆืจื” ืขื new, ืื™ื ื” ืžืกืชื™ื™ืžืช ื‘ String Pool: ื”ื™ื ื”ื•ืคื›ืช ืœืื•ื‘ื™ื™ืงื˜ ื ืคืจื“, ื’ื ืื ื”ื˜ืงืกื˜ ืฉืœื• ื–ื”ื” ืœื—ืœื•ื˜ื™ืŸ ืœืื•ืชื” ืฉื•ืจื” ืž'ื String Pool. ื›ืœื•ืžืจ, ืื ื ื›ืชื•ื‘ ืืช ื”ืงื•ื“ ื”ื‘ื:
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = "JavaRush is the best site to learn Java!";
       String s3 = new String("JavaRush is the best site to learn Java!");
   }
}
ื‘ื–ื™ื›ืจื•ืŸ ื–ื” ื™ื™ืจืื” ื›ืš: ืฉื•ื•ื™ื ื•ื”ืฉื•ื•ืืช ืžื—ืจื•ื–ื•ืช - 4ื•ื‘ื›ืœ ืคืขื ืฉื ื•ืฆืจ ืื•ื‘ื™ื™ืงื˜ ื—ื“ืฉ, newื™ื•ืงืฆื” ืื–ื•ืจ ื—ื“ืฉ ื‘ื–ื™ื›ืจื•ืŸ, ื’ื ืื ื”ื˜ืงืกื˜ ื‘ืชื•ืš ื”ืฉื•ืจื•ืช ื”ื—ื“ืฉื•ืช ื–ื”ื”! ื ืจืื” ืฉืกื™ื“ืจื ื• ืืช ื”ืื•ืคืจื˜ื•ืจ ==, ืื‘ืœ ืžื” ืœื’ื‘ื™ ื”ื—ื‘ืจ ื”ื—ื“ืฉ ืฉืœื ื• - ืฉื™ื˜ืช equals()?
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = new String("JavaRush is the best site to learn Java!");
       System.out.println(s1.equals(s2));
   }
}
ืคืœื˜ ืžืกื•ืฃ:

true
ืžืขื ื™ื™ืŸ. ืื ื—ื ื• ื™ื•ื“ืขื™ื ื‘ื“ื™ื•ืง ืžื” s1ื•ืžืฆื‘ื™ืขื™ื s2ืขืœ ืื–ื•ืจื™ื ืฉื•ื ื™ื ื‘ื–ื™ื›ืจื•ืŸ. ืื‘ืœ, ื‘ื›ืœ ื–ืืช, ืฉื™ื˜ืช equals() ืื•ืžืจืช ืฉื”ื ืฉื•ื•ื™ื. ืœืžื”? ื–ื›ื•ืจ, ืœืžืขืœื” ืืžืจื ื• ืฉื ื™ืชืŸ ืœืขืงื•ืฃ ืืช ื”ืžืชื•ื“ื” equals() ื‘ืžื—ืœืงื” ืฉืœืš ื›ืš ืฉื”ื™ื ืžืฉื•ื•ื” ืื•ื‘ื™ื™ืงื˜ื™ื ื›ืžื• ืฉืืชื” ืฆืจื™ืš? ื–ื” ืžื” ืฉื”ื ืขืฉื• ืขื ื”ื›ื™ืชื” String. ื™ืฉ ืœื• ืฉื™ื˜ืช equals() ื ื“ื—ืงืช. ื•ื–ื” ืœื ืžืฉื•ื•ื” ื‘ื™ืŸ ืงื™ืฉื•ืจื™ื, ืืœื ืืช ืจืฆืฃ ื”ืชื•ื•ื™ื ื‘ืžื—ืจื•ื–ื•ืช. ื•ืื ื”ื˜ืงืกื˜ ื‘ืžื—ืจื•ื–ื•ืช ื–ื”ื”, ื–ื” ืœื ืžืฉื ื” ืื™ืš ื”ื ื ื•ืฆืจื• ื•ื”ื™ื›ืŸ ื”ื ืžืื•ื—ืกื ื™ื: ื‘ืžืื’ืจ ื”ืžื™ืชืจื™ื, ืื• ื‘ืื–ื•ืจ ื–ื™ื›ืจื•ืŸ ื ืคืจื“. ืชื•ืฆืืช ื”ื”ืฉื•ื•ืื” ืชื”ื™ื” ื ื›ื•ื ื”. ืื’ื‘, Java ืžืืคืฉืจืช ืœืš ืœื”ืฉื•ื•ืช ื ื›ื•ืŸ ืžื—ืจื•ื–ื•ืช ื‘ืฆื•ืจื” ืœื ืชืœื•ื™ืช ืจื™ืฉื™ื•ืช. ื‘ืžืฆื‘ ืจื’ื™ืœ, ืื ืชื›ืชื•ื‘ ืื—ืช ืžื”ืฉื•ืจื•ืช, ืœืžืฉืœ, ื‘-caps, ืชื•ืฆืืช ื”ื”ืฉื•ื•ืื” ืชื”ื™ื” ืฉืงืจ:
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = new String("JAVARUSH - ะ›ะฃะงะจะ˜ะ™ ะกะะ™ะข ะ”ะ›ะฏ ะ˜ะ—ะฃะงะ•ะะ˜ะฏ JAVA!");
       System.out.println(s1.equals(s2));
   }
}
ืคืœื˜ ืžืกื•ืฃ:

false
ื‘ืžืงืจื” ื–ื”, ืœืžื—ืœืงื” Stringื™ืฉ ืฉื™ื˜ื” equalsIgnoreCase(). ืื ื”ื“ื‘ืจ ื”ืขื™ืงืจื™ ื‘ื”ืฉื•ื•ืื” ืฉืœืš ื”ื•ื ืจืฆืฃ ื”ื“ืžื•ื™ื•ืช ื”ืกืคืฆื™ืคื™ื•ืช, ื•ืœื ื”ืžืงืจื” ืฉืœื”ื, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘ื•. ืœื“ื•ื’ืžื”, ื–ื” ื™ื”ื™ื” ืฉื™ืžื•ืฉื™ ื‘ืขืช ื”ืฉื•ื•ืืช ืฉืชื™ ื›ืชื•ื‘ื•ืช ื“ื•ื"ืœ:
public class Main {

   public static void main(String[] args) {

       String address1 = "Moscow, Academician Korolev street, 12";
       String address2 = new String("ะ“. ะœะžะกะšะ’ะ, ะฃะ›. ะะšะะ”ะ•ะœะ˜ะšะ ะšะžะ ะžะ›ะ•ะ’ะ, ะ”ะžะœ 12");
       System.out.println(address1.equalsIgnoreCase(address2));
   }
}
ื‘ืžืงืจื” ื–ื”, ื‘ืจื•ืจ ืฉืื ื• ืžื“ื‘ืจื™ื ืขืœ ืื•ืชื” ื›ืชื•ื‘ืช, ื•ืœื›ืŸ ืฉื™ืžื•ืฉ ื‘ืฉื™ื˜ื” equalsIgnoreCase()ืชื”ื™ื” ื”ื”ื—ืœื˜ื” ื”ื ื›ื•ื ื”.

ืฉื™ื˜ืช String.intern()

ืœืžื—ืœืงื” Stringื™ืฉ ืฉื™ื˜ื” ืžืกื•ื‘ื›ืช ื ื•ืกืคืช - intern(); ื”ืฉื™ื˜ื” intern()ืคื•ืขืœืช ื™ืฉื™ืจื•ืช ืขื String Pool'ืื•ืž. ืื ืืชื” ืงื•ืจื ืœืžืชื•ื“ื” intern()ืขืœ ืžื—ืจื•ื–ืช, ื–ื”:
  • ืžื—ืคืฉ ืœืจืื•ืช ืื ื™ืฉ ืžื—ืจื•ื–ืช ืขื ื”ื˜ืงืกื˜ ื”ื–ื” ื‘ืžืื’ืจ ื”ืžื—ืจื•ื–ื•ืช
  • ืื ื™ืฉ, ืžื—ื–ื™ืจ ืงื™ืฉื•ืจ ืืœื™ื• ื‘ื‘ืจื™ื›ื”
  • ืื ืœื, ื”ื•ื ืžืฆื™ื‘ ืฉื•ืจื” ืขื ื”ื˜ืงืกื˜ ื”ื–ื” ื‘ืžืื’ืจ ื”ืžื—ืจื•ื–ื•ืช ื•ืžื—ื–ื™ืจ ืงื™ืฉื•ืจ ืืœื™ื•.
ืขืœ ื™ื“ื™ ื”ื—ืœืช ื”ืฉื™ื˜ื” intern()ืขืœ ื”ืคื ื™ื” ืœืžื—ืจื•ื–ืช ืฉื ื•ืฆืจื” ื‘ืืžืฆืขื•ืช new, ื ื•ื›ืœ ืœื”ืฉื•ื•ืช ืื•ืชื” ืœื”ืคื ื™ื” ืœืžื—ืจื•ื–ืช ืž- String Pool'a ื“ืจืš ื”- ==.
public class Main {

   public static void main(String[] args) {

       String s1 = "JavaRush is the best site to learn Java!";
       String s2 = new String("JavaRush is the best site to learn Java!");
       System.out.println(s1 == s2.intern());
   }
}
ืคืœื˜ ืžืกื•ืฃ:

true
ื‘ืขื‘ืจ, ื›ืฉื”ืฉื•ื•ื™ื ื• ืื•ืชื ืœืœื intern(), ื”ืชื•ืฆืื” ื”ื™ื™ืชื” ืฉืงืจื™ืช. ื›ืขืช ื”ืฉื™ื˜ื” intern()ื‘ื“ืงื” ื”ืื ื™ืฉ ืฉื•ืจื” ืขื ื”ื˜ืงืกื˜ "JavaRush - ื”ืืชืจ ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ ืœืœื™ืžื•ื“ ื’'ืื•ื•ื”!" ื‘ื‘ืจื™ื›ืช ื”ืžื™ืชืจื™ื. ื›ืžื•ื‘ืŸ ืฉื–ื” ืฉื: ื™ืฆืจื ื• ืืช ื–ื” ื›ืฉื›ืชื‘ื ื•
String s1 = "JavaRush is the best site to learn Java!";
ื ื‘ื“ืง ืฉื”ื”ืคื ื™ื” s1ื•ื”ื”ืคื ื™ื” ื”ืžื•ื—ื–ืจืช ื‘ืฉื™ื˜ื” s2.intern()ืžืฆื‘ื™ืขื•ืช ืขืœ ืื•ืชื• ืื–ื•ืจ ื‘ื–ื™ื›ืจื•ืŸ, ื•ื›ืžื•ื‘ืŸ ืฉื›ืŸ :) ืœืกื™ื›ื•ื, ื–ื›ืจื• ื•ื”ืฉืชืžืฉื• ื‘ื›ืœืœ ื”ืขื™ืงืจื™: ื›ื“ื™ ืœื”ืฉื•ื•ืช ืžื—ืจื•ื–ื•ืช, ื”ืฉืชืžืฉื• ืชืžื™ื“ ื‘-equals() ืฉื™ื˜ื”! ื›ืืฉืจ ืžืฉื•ื•ื™ื ืžื—ืจื•ื–ื•ืช, ืืชื” ืžืชื›ื•ื•ืŸ ื›ืžืขื˜ ืชืžื™ื“ ืœื”ืฉื•ื•ืืช ื”ื˜ืงืกื˜ ืฉืœื”ื, ืœื ืœืงื™ืฉื•ืจื™ื, ืื–ื•ืจื™ ื–ื™ื›ืจื•ืŸ ื•ื›ื•'. ื”ืฉื™ื˜ื” equals() ืขื•ืฉื” ื‘ื“ื™ื•ืง ืืช ืžื” ืฉืืชื” ืฆืจื™ืš. ื”ื ื” ื›ืžื” ืงื™ืฉื•ืจื™ื ืฉืชื•ื›ืœื• ืœืœืžื•ื“ ื‘ืขืฆืžื›ื:
ื”ืขืจื•ืช
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION