Gibt es eine einfache und elegante Möglichkeit, in Java einen String in einen Zeichensatz umzuwandeln?Java

Java-Forum
Anonymous
 Gibt es eine einfache und elegante Möglichkeit, in Java einen String in einen Zeichensatz umzuwandeln?

Post by Anonymous »

Ich möchte einen nicht veränderbaren Satz bestimmter Zeichen erstellen und der Übersichtlichkeit halber möchte ich diesen Satz mit einem String initialisieren. Im Moment kann ich es so machen:

Code: Select all

static {
final String hexCharacters = "0123456789ABCDEFabcdef"; //NON-NLS
final Set tempHexSet = new HashSet();
for (char c : hexCharacters.toCharArray()) {
tempHexSet.add(c);
}
final Set hexSet = Collections.unmodifiableSet(tempHexSet);
}
Aber das ist ungeschickt und ausführlich. Ich würde es lieber so machen:

Code: Select all

private static final Set hexSet
= Collections.unmodifiableSet(new HashSet("0123456789ABCDEFabcdef".toCharArray()));
Natürlich kann ich ein Set nicht mit einem Array initialisieren, also habe ich Folgendes versucht:

Code: Select all

private static final Set hexSet = Collections.unmodifiableSet(
new HashSet("0123456789ABCDEFabcdef".chars().boxed().collect(Collectors.toList())
);
Dies wird nicht kompiliert, da die chars()-Methode einen Strom von int-Werten zurückgibt, keine Zeichen. Ich kann die Werte nicht Zeichen zuordnen, da es keine CharStream-Klasse und keine Zuordnungsmethode gibt, die einem primitiven Objekt zugeordnet werden kann.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post