Wenn es schon eine Einschränkung gibt, dass man keine Schleifen benutzt, dann wird man die toHexString-Methode auch nicht benutzen dürfen...
Die Idee ist schon die richtige, nur du musst jetzt mit Rückgabewerten arbeiten:
Java Code:
1
2
3
4
5
6
7
| public static String convertToHex(int zahl) {
if (zahl>15) {
return convertToHex(zahl/16) + convertSingleDitig(zahl%16);
} else {
return convertSingleDigit(zahl);
}
} |
So ungefähr. Wobei du deine ganzen if-Abfragen in die
convertSingleDigit -Methode auslagerst. Die ist dazu da um aus 0..15 > 0..F zu machen.
P.S. so viele If-Anfragen brauchst du nicht... wenn der Rest kleiner ist als 10, kannst du direkt ihn als
String.valueOf(rest) zurückgeben. Bei den >9 Werten kannst du auch
String.valueOf((char) ('A'+rest-10)) rechnen.