Méthode pour concaténer 2 Chaînes de caractères en Java

J'ai une méthode en Java qui sert à concaténer 2 Chaînes. Actuellement, il fonctionne correctement, mais je pense que ça peut être mieux écrit.

public static String concat(String str1, String str2) {
  String rVal = null;
  if (str1 != null || str2 != null) {
    rVal = "";
    if (str1 != null) {
      rVal += str1;
    }
    if (str2 != null) {
      rVal += str2;
    }      
  }    
  return rVal;
}

Voici certaines des exigences:

  1. Si les deux str1 et str2 sont nulles, la méthode renvoie null
  2. Si ch1 ou ch2 est null, il suffit de retourner le pas de Chaîne null
  3. Si str1 et str2 ne sont pas null, il va enchaîner
  4. Jamais, il ajoute "null" à la suite

Quelqu'un peut-il le faire avec moins de code?

Si je l'appelle str1.concat(str2), il va lancer une exception NullPointerException lors de str1 est null.
Ne pourriez-vous utiliser StringBuilder?
Je ne suis pas sûr que les poignées de l'null cas très bien.
Cette question a vraiment 7 votes? Vraiment? Juste pour être en mesure de ré-écrire la même chose avec un opérateur ternaire?

OriginalL'auteur Ryan | 2010-03-17