String
String - immutable klasdir.
package main;
public class Test {
public static void main(String[] args) {
String s = null;
boolean bb = "java".equals(s);
boolean b = s.equals("java"); // null pointer exception aliriq
}
}
String x = "hello";
String y = "hello";
System.out.println(x == y);
String a = "hello"; // compile time yaranir
String b = " hello".trim(); // runtime yaranir
System.out.println(a == b);
String l = "Hello World";
String k = "Hello ";
String z = a + "World";
System.out.println(l == z);
String ll = "Hello World";
final String kk = "Hello ";
String zz = kk + "World";
System.out.println(ll == zz);String ll = "Hello World";
final String kk = "Hello ";
String tt = "World";
String zz = kk + tt;
System.out.println(ll == zz);Bes niye bele baw verir. Final variable-lar deyiwilmir ve compiler gorur ki, variable-lar
deyiwilmir ve menimsedende de compile time baw verir ve ona gorede yuxaridaki misallarin
bezileri true verir.
--------------------------------------------------------------------------------------------
package main;
public class Main2 {
public static void main(String[] args) {
StringBuilder[] a = new StringBuilder[3];
StringBuilder b = new StringBuilder("Hello");
for (int i = 0; i < a.length; i++) {
a[i] = b;
}
b.append("Baku");
for (StringBuilder c : a) {
System.out.println(c);
}
}
}versus:
package main;
public class Main2 {
public static void main(String[] args) {
String[] a = new String[3];
StringBuilder b = new StringBuilder("Hello");
for (int i = 0; i < a.length; i++) {
a[i] = b.toString();
}
b.append("Baku");
for (String c : a) {
System.out.println(c);
}
}
}---------------------------------------------------------------------------------------------
Speed difference between String and StringBuilder and StringBuffer
package main.stirng;
public class StringPerformance {
public static void main(String[] args) {
// buildStreamWithPlus("Java", 100_000);
// buildStringWithStringBuilder("Java", 100_000);
// buildStringWithStringBuffer("Java", 100_000);
}
public static void buildStreamWithPlus(String string, int count) {
long start = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
string = string + i;
}
long end = System.currentTimeMillis();
System.out.println("String. Time to build string is : " + (end - start));
System.out.println("String length : " + string.length());
}
public static void buildStringWithStringBuilder(String string, int count) {
StringBuilder sb = new StringBuilder(string);
long start = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
sb.append(i);
}
long end = System.currentTimeMillis();
System.out.println("StringBuilder. Time to build string is : " + (end - start));
System.out.println("String length : " + sb.length());
}
public static void buildStringWithStringBuffer(String string, int count) {
StringBuffer sb = new StringBuffer(string);
long start = System.currentTimeMillis();
for (int i = 0; i < count; i++) {
sb.append(i);
}
long end = System.currentTimeMillis();
System.out.println("StringBuffer. Time to build string is : " + (end - start));
System.out.println("String length : " + sb.length());
}
}
Комментарии
Отправить комментарий