Powiel możliwe:
What is the purpose of the expression “new String(…)” in Java?Kiedy należy używać String s = new String ("Hello World")?
wiem, że String s = new String("Hello World")
należy unikać, ponieważ będzie ona stworzyć dodatkową przestrzeń dla "Hello World", które jest konieczne w większości przypadków.
Powiązane pytanie wyjaśniając, dlaczego należy unikać String s = new String("Hello World")
jest tutaj:
What is the difference between "text" and new String("text")?
Ale gdy potrzebujemy użyć String s = new String("Hello World")
zamiast String s = "Hello World"
? To jest moje pytanie do wywiadu.
Jeśli w większości przypadków należy unikać String s = new String("Hello World")
, dlaczego Java nadal pozwala na to?
samo pytanie dotyczy 'new Boolean (true)', kiedy można zrobić 'Boolean.TRUE'. – Thilo
Istnieje wiele trywialnych fragmentów kodu, których nie można oczekiwać, że Java * uniemożliwi * pisanie. 'int a = 5 + 1 - 1;' jest głupie, ale legalne. –
@Damien_The_Unbeliever: Ten konkretny przykład jest pod opieką kompilatora (podczas gdy 'new String (" s ");)) nie jest. – Thilo