Rozpoczynam moją przygodę z Java i trafiłem na pierwszy problem. Co zrobić bym mógł podawać programowi wartości z .(kropką) a nie tylko przecinkiem i by też z kropką a nie przecinkiem były wyświetlane? Np. 1.1 a nie 1,1.
Pewnie chodzi o "Locale".
Domyślny znak separatora części ułamkowej w bieżącej lokalizacji:
char PRZECINEK = DecimalFormatSymbols.getInstance().getDecimalSeparator();
W lokalizacjach angielskojęzycznych zmienna ta otrzyma kod znaku kropki.
W przypadku gdy liczby reprezentują wartość pieniężną należy jednak użyć DecimalFormatSymbols.getMonetaryDecimalSeparator() ponieważ są kraje w których znak takiego separatora jest innym znakiem niż ten z getDecimalSeparator().
Podobnie jest w przypadku getGroupingSeparator(), który reprezentuje znak oddzielający tysiące (zwykle spacja, kropka lub przecinek) oraz getZeroDigit(), który reprezentuje potencjalnie inny niż w ASCII znak zera (tak mają kraje arabskie, w pozostałych jest to zwyczajne '0').
Wszystko zależy od tego, czego używasz do parsowania/formatowania (Formatter, MessageFormat, Scanner itd.), ale zawsze jest gdzieś tam możliwość podania własnego Locale'u.