Class ConvertingNumbers
- java.lang.Object
-
- bitchanger.calculations.ConvertingNumbers
-
public class ConvertingNumbers extends Object
Die KlasseConvertingNumbersenthält Methoden zum Umwandeln von Zahlen mit verschiedenen Zahlensystemen.Die Methoden dieser Klasse können sowohl ganze Zahlen als auch Kommazahlen mit positiven oder negativen Wert umwandeln. Es werden beliebige Zahlensysteme von der Basis 2 bis zur Basis 36 unterstützt, was dem Zeichenvorrat 0-9 und A-Z entspricht. In der String-Darstellung können Zahlen mit Ziffern, Großbuchstaben und Kleinbuchstaben an die Methoden dieser Klasse übergeben werden, allerdings enthalten die Rückgaben in der String-Darstellung aller Methoden ausschließlich Zahlen und Großbuchstaben.
Das Komma-Zeichen kann mit der Klasse
Preferencesauf Deutsch (,) oder Englisch (.) eingestellt werden. Ebenso kann der Indikator für abgeschnittene Nachkommastellen (...) aktiviert oder deaktiviert werden.- Since:
- Bitchanger 0.1.0
- Version:
- 1.0.2
- Author:
- Tim Mühle, Moritz Wolter
- See Also:
Preferences
-
-
Field Summary
Fields Modifier and Type Field Description static StringFRACTIONAL_PRECISION_INDICATORIndikator für Abgeschnittene Nachkommastellen bei der Umwandlung vom Zehnersystem in ein anderes, beliebiges Zahlensystemstatic intMAX_BASEEine Konstante für die größtmögliche Basis bei einem Zeichenvorrat von 0-9 und A-Zstatic intMIN_BASEEine Konstante für die kleinstmögliche Basis
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static StringbaseToDecString(int base, String value)Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.static StringbaseToDecString(int base, String value, char comma)Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.static StringbaseToDecString(int base, String value, char comma, Queue<ConversionStep> calcPath)Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.static StringdecToBase(int newBase, String decValue)Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.static StringdecToBase(int newBase, String decValue, char comma)Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.static StringdecToBase(int newBase, String decValue, char comma, int fractionalPrecision)Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.static StringdecToBase(int newBase, String decValue, char comma, int fractionalPrecision, Queue<ConversionStep> calcPath)Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.static StringdecToBaseBlocks(int newBase, String decValue, char comma, int blockSize)Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um und unterteilt die Zahl in Blöcke der gewünschten Länge.static StringdoubleToString(double d)static booleanisValueToBase(int base, String value)Prüft, obvalueeine Zahl zur geforderten Basisbaserepräsentiert.static StringsplitInBlocks(int base, String value)Unterteilt den übergebenen String in Blöcke mit einer Länge von 4 Zeichen für binäre und hexadezimale Zahlen oder 3 Zeichen für alle anderen Zahlensystemestatic StringsplitInBlocks(String value, int blockSize)Unterteilt den übergebenen String in Blöcke mit der gegebenen Länge, beispielsweise zur Tausendertrennung
-
-
-
Field Detail
-
MIN_BASE
public static final int MIN_BASE
Eine Konstante für die kleinstmögliche Basis- See Also:
- Constant Field Values
-
MAX_BASE
public static final int MAX_BASE
Eine Konstante für die größtmögliche Basis bei einem Zeichenvorrat von 0-9 und A-Z- See Also:
- Constant Field Values
-
FRACTIONAL_PRECISION_INDICATOR
public static final String FRACTIONAL_PRECISION_INDICATOR
Indikator für Abgeschnittene Nachkommastellen bei der Umwandlung vom Zehnersystem in ein anderes, beliebiges Zahlensystem- See Also:
- Constant Field Values
-
-
Method Detail
-
isValueToBase
public static boolean isValueToBase(int base, String value) throws IllegalArgumentExceptionPrüft, obvalueeine Zahl zur geforderten Basisbaserepräsentiert. Ist der Indikator für abgeschnittene Nachkommastellen aktiviert, wird dieser bei der Auswertung ignoriert. Leerzeichen können als Tausender-Trennung verwendet werden und werden von dieser Methode ebenfalls ignoriert.- Parameters:
value- zu prüfende Zahl repräsentiert alsStringbase- geforderte Basis vonvalue- erlaubt sind nur Werte von 2 bis 36 (einschließlich)- Returns:
true, wennvalueeine Zahl zur geforderten Basisbaserepräsentiert, andernfalls wirdfalsezurückgegeben- Throws:
IllegalArgumentException- wennbasisden Wertebereich [2, 36] verlässt
-
doubleToString
public static String doubleToString(double d)
-
baseToDecString
public static String baseToDecString(int base, String value) throws NullPointerException, NumberFormatException, IllegalArgumentException, NumberOverflowException
Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.- Parameters:
base- die spezifische Basis des übergebenen Wertesvaluevalue- der Zahlenwert, der umgewandelt werden soll, in der String-Darstellung- Returns:
- Wert der Zahl im Zehnersystem in der String-Darstellung mit dem standardmäßig eingestellten Komma
- Throws:
NullPointerException- wenn der ParametervaluenullistNumberFormatException- wenn der Parametervaluekeine Zahl zur BasisbaseistIllegalArgumentException- wennvalueein leerer String ist oder wennbasisden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE
-
baseToDecString
public static String baseToDecString(int base, String value, char comma) throws NullPointerException, NumberFormatException, IllegalArgumentException, NumberOverflowException
Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.- Parameters:
base- die spezifische Basis des übergebenen Wertesvaluevalue- der Zahlenwert, der umgewandelt werden soll, in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wird- Returns:
- Wert der Zahl im Zehnersystem in der String-Darstellung
- Throws:
NullPointerException- wenn der ParametervaluenullistNumberFormatException- wenn der Parametervaluekeine Zahl zur BasisbaseistIllegalArgumentException- wennvalueein leerer String ist oder wennbasisden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der ganzzahlige Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE
-
baseToDecString
public static String baseToDecString(int base, String value, char comma, Queue<ConversionStep> calcPath) throws NullPointerException, NumberFormatException, IllegalArgumentException, NumberOverflowException
Wandelt die übergebene Zahlvaluezur beliebigen Basisbasein eine Zahl zur Basis 10 in der String-Darstellung um.- Parameters:
base- die spezifische Basis des übergebenen Wertesvaluevalue- der Zahlenwert, der umgewandelt werden soll, in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wirdcalcPath- Queue, in der alle Rechenschritte gespeichert werden,nullist erlaubt- Returns:
- Wert der Zahl im Zehnersystem in der String-Darstellung
- Throws:
NullPointerException- wenn der ParametervaluenullistNumberFormatException- wenn der Parametervaluekeine Zahl zur BasisbaseistIllegalArgumentException- wennvalueein leerer String ist oder wennbasisden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der ganzzahlige Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE
-
decToBase
public static String decToBase(int newBase, String decValue) throws NullPointerException, NumberFormatException, NumberOverflowException
Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.Wenn in der Klasse
Preferencesder Indikator für Nachkommastellen aktiviert ist, werden die wegen der maximalen Anzahl von Nachkommastellen abgeschnittenen Nachkommastellen durch "..." angedeutet.- Parameters:
newBase- Basis des neuen Zahlensystems, in das die ZahldecValueumgewandelt werden solldecValue- Wert der Zahl im Zehnersystem in der String-Darstellung- Returns:
- umgewandelte Zahl zur übergebenen Basis in der String-Darstellung mit dem standardmäßig eingestellten Komma
- Throws:
NullPointerException- wenn der ParameterdecValuenullistNumberFormatException- wenn der ParameterdecValuekeine Zahl zur Basis 10 istIllegalArgumentException- wenndecValueein leerer String ist oder wennnewBaseden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE- See Also:
Preferences
-
decToBase
public static String decToBase(int newBase, String decValue, char comma) throws NullPointerException, NumberFormatException, IllegalArgumentException, NumberOverflowException
Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.Wenn in der Klasse
Preferencesder Indikator für Nachkommastellen aktiviert ist, werden die wegen der maximalen Anzahl von Nachkommastellen abgeschnittenen Nachkommastellen durch "..." angedeutet.- Parameters:
newBase- Basis des neuen Zahlensystems, in das die ZahldecValueumgewandelt werden solldecValue- Wert der Zahl im Zehnersystem in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wird- Returns:
- umgewandelte Zahl zur übergebenen Basis in der String-Darstellung mit maximal 15 Nachkommastellen
- Throws:
NullPointerException- wenn der ParameterdecValuenullistNumberFormatException- wenn der ParameterdecValuekeine Zahl zur Basis 10 istIllegalArgumentException- wenndecValueein leerer String ist oder wennnewBaseden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE- See Also:
Preferences
-
decToBase
public static String decToBase(int newBase, String decValue, char comma, int fractionalPrecision) throws NullPointerException, NumberFormatException, IllegalArgumentException, UnsupportedOperationException, NumberOverflowException
Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.Wenn in der Klasse
Preferencesder Indikator für Nachkommastellen aktiviert ist, werden die wegen der maximalen Anzahl von Nachkommastellen abgeschnittenen Nachkommastellen durch "..." angedeutet.- Parameters:
newBase- Basis des neuen Zahlensystems, in das die ZahldecValueumgewandelt werden solldecValue- Wert der Zahl im Zehnersystem in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wirdfractionalPrecision- maximale Anzahl der Nachkommastellen- Returns:
- umgewandelte Zahl zur übergebenen Basis in der String-Darstellung
- Throws:
NullPointerException- wenn der ParameterdecValuenullistNumberFormatException- wenn der ParameterdecValuekeine Zahl zur Basis 10 istIllegalArgumentException- wenndecValueein leerer String ist oder wennnewBaseden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)UnsupportedOperationException- wenndecValuenegativ ist und Nachkommastellen enthält und gleichzeitignewBasezwei istNumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE- See Also:
Preferences
-
decToBase
public static String decToBase(int newBase, String decValue, char comma, int fractionalPrecision, Queue<ConversionStep> calcPath) throws NullPointerException, NumberFormatException, IllegalArgumentException, UnsupportedOperationException, NumberOverflowException
Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um.Wenn in der Klasse
Preferencesder Indikator für Nachkommastellen aktiviert ist, werden die wegen der maximalen Anzahl von Nachkommastellen abgeschnittenen Nachkommastellen durch "..." angedeutet.- Parameters:
newBase- Basis des neuen Zahlensystems, in das die ZahldecValueumgewandelt werden solldecValue- Wert der Zahl im Zehnersystem in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wirdfractionalPrecision- maximale Anzahl der NachkommastellencalcPath- Queue, in der alle Rechenschritte gespeichert werden,nullist erlaubt- Returns:
- umgewandelte Zahl zur übergebenen Basis in der String-Darstellung
- Throws:
NullPointerException- wenn der ParameterdecValuenullistNumberFormatException- wenn der ParameterdecValuekeine Zahl zur Basis 10 istIllegalArgumentException- wenndecValueein leerer String ist oder wennnewBaseden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)UnsupportedOperationException- wenndecValuenegativ ist und Nachkommastellen enthält und gleichzeitignewBasezwei istNumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE- See Also:
Preferences
-
decToBaseBlocks
public static String decToBaseBlocks(int newBase, String decValue, char comma, int blockSize) throws NullPointerException, NumberFormatException, IllegalArgumentException, NumberOverflowException
Wandelt die übergebene ZahldecValuezur Basis 10 in eine Zahl zur beliebigen BasisnewBasein der String-Darstellung um und unterteilt die Zahl in Blöcke der gewünschten Länge.Wenn in der Klasse
Preferencesder Indikator für Nachkommastellen aktiviert ist, werden die wegen der maximalen Anzahl von Nachkommastellen abgeschnittenen Nachkommastellen durch "..." angedeutet.- Parameters:
newBase- Basis des neuen Zahlensystems, in das die ZahldecValueumgewandelt werden solldecValue- Wert der Zahl im Zehnersystem in der String-Darstellungcomma- das Zeichen, welches als Komma in Gleitpunktzahlen verwendet wirdblockSize- Länge der Blöcke, in die der String unterteilt wird- Returns:
- umgewandelte Zahl zur übergebenen Basis in der String-Darstellung
- Throws:
NullPointerException- wenn der ParameterdecValuenullistNumberFormatException- wenn der ParameterdecValuekeine Zahl zur Basis 10 istIllegalArgumentException- wenndecValueein leerer String ist oder wennnewBaseden Wertebereich [2, 36] verlässt - seeisValueToBase(int,java.lang.String)NumberOverflowException- wenn der Wert vonvaluegrößer oder kleiner ist als +/-Long.MAX_VALUE- Since:
- Bitchanger 0.1.4
- See Also:
Preferences,decToBase(int, String, char),splitInBlocks(String, int)
-
splitInBlocks
public static String splitInBlocks(String value, int blockSize)
Unterteilt den übergebenen String in Blöcke mit der gegebenen Länge, beispielsweise zur Tausendertrennung- Parameters:
value- String, der aufgeteilt wirdblockSize- Länge der Blöcke- Returns:
- Aufgeteilter String mit Blöcken
- Since:
- Bitchanger 0.1.4
-
splitInBlocks
public static String splitInBlocks(int base, String value)
Unterteilt den übergebenen String in Blöcke mit einer Länge von 4 Zeichen für binäre und hexadezimale Zahlen oder 3 Zeichen für alle anderen Zahlensysteme- Parameters:
base- Basis vonvaluevalue- String, der aufgeteilt wird- Returns:
- Aufgeteilter String mit Blöcken
- Since:
- Bitchanger 0.1.8
-
-