Misi gan ane mau tanya tentang java
sorry kalo asal post soal nya ane lagi buru buru
bisa tolong jelasin ngak perbedaan
1. Penulisan sesuatu di dalam tanda antara petik ganda (literal String).
Ex : String s = ”Halo”;
System.out.println(“Percobaan”);
2. Pembuatan object String dengan keyword new.
Ex : String s = new String(“Halo”);
terus saya ingin mencocokan kedua string dengan "=="
System.out.println(e == e2);
maka akan menghasilkan nilai FALSE;
kok bisa? kan sama2 "1"
iya betul karena
e adalah String Object yang artinya setiap adanya String Object maka akan terdapat 1 object di memory
hal ini sama dengan kaya gini
class Manusia {
String name;
String city;
}
Manusia udinDiSingapur = new Manusia();
udin.name = "udin";
udin,city = "singapur"
Manusia udinDiGarut = new Manusia();
udin.name = "udin";
udin,city = "garut"
maka udinDiGarut != udinDiSingapur
kedua object diatas maupun sama2 bernama udin tapi mereka berdua itu berbeda. yang satu diciptakan khusus untuk Udin yang berada di singapur
dan udin yang satu di garut, tapi String mengharuskan
UdinDigarut harus sama dengan UdinDiSingapur karena String mencocokan berdasarkan nilai, yakni sama2 bernama udin.
e2 adalah String lteral yang artinya setiap penciptaan String litteral maka akan
berujung pada object yang sama berdasarkan nilai nya.
contoh :
String e = "udin";
String e2 = "udin";
maka e dan e2 adalah sama
dan operator equality "==" akan mencocokan berdasarkan object. bukan berdasarkan nilai nya,
e2 adalah String literal artinya setiap terciptanya String literal maka object akan sama2 saja ,karena akan compiler akan mencocokan berdasarkan nilai nya yaitu "udin"
Quote:
update
misi gan ane nanya lagi
terus kalo untuk pemakaianya gmn ?
kapan kita pake String s = ”Halo”; dan
kapan kita pake yang ini String s = new String(“Halo”);
terus ane mau tanya lagi tentang String dan StringBuillder
yang mau ane tanyain kok hasilnya bisa beda kayak gitu ya gan
Quote:
untuk Kelas java.lang.String
String s;
s = new String(”ABC”);
s.concat(“DEF”);
System.out.println(s);
Akan mencetak :
ABC
Quote:
untuk Kelas java.lang.StringBuilder
StringBuilder sb;
sb = new StringBuilder(“ABC”);
sb.append(“DEF”);
System.out.println(sb);