logo

Java String format()

The java string format() метод връща форматирания низ по даден локал, формат и аргументи.

Ако не посочите локала в метода String.format(), той използва локала по подразбиране чрез извикване Locale.getDefault() метод.

Методът format() на езика java е като sprintf() функция на език c и printf() метод на езика java.

arraylist в java

Вътрешно изпълнение

 public static String format(String format, Object... args) { return new Formatter().format(format, args).toString(); } 

Подпис

Има два вида метод string format():

 public static String format(String format, Object... args) and, public static String format(Locale locale, String format, Object... args) 

Параметри

местен : указва локала, който да се приложи към метода format().

формат : формат на низа.

аргументи : аргументи за форматиращия низ. Може да е нула или повече.


Се завръща

форматиран низ


Хвърляния

NullPointerException : ако форматът е нула.

IllegalFormatException : ако форматът е незаконен или несъвместим.


Пример за метод Java String format().

 public class FormatExample{ public static void main(String args[]){ String name='sonoo'; String sf1=String.format('name is %s',name); String sf2=String.format('value is %f',32.33434); String sf3=String.format('value is %32.12f',32.33434);//returns 12 char fractional part filling with 0 System.out.println(sf1); System.out.println(sf2); System.out.println(sf3); }} 
Тествайте сега
 name is sonoo value is 32.334340 value is 32.334340000000 

Java String Format Specifiers

Тук предоставяме таблица със спецификатори на формати, поддържани от Java String.

Спецификатор на формат Тип данни Изход
%a с плаваща запетая (освен BigDecimal ) Връща шестнадесетичен изход на число с плаваща запетая.
%b Всеки тип „истина“, ако не е нула, „фалшиво“, ако е нула
%° С характер Unicode знак
цяло число (вкл. байт, кратко, int, дълго, bigint) Десетично цяло число
%То е плаваща запетая десетично число в научна нотация
%f плаваща запетая десетично число
%g плаваща запетая десетично число, евентуално в научна нотация в зависимост от точността и стойността.
всеки тип Шестнадесетичен низ със стойност от метода hashCode().
нито един Специфичен за платформата разделител на редове.
%O цяло число (вкл. байт, кратко, int, дълго, bigint) Осмично число
всеки тип Низова стойност
%T Дата/час (вкл. long, Calendar, Date и TemporalAccessor) %t е префиксът за конвертиране на дата/час. След това са необходими повече флагове за форматиране. Вижте преобразуване на дата/час по-долу.
цяло число (вкл. байт, кратко, int, дълго, bigint)

Шестнадесетичен низ.

Java String format() метод Пример 2

Този метод поддържа различни типове данни и ги форматира в тип низ. Нека видим един пример.

 public class FormatExample2 { public static void main(String[] args) { String str1 = String.format('%d', 101); // Integer value String str2 = String.format('%s', 'Amar Singh'); // String value String str3 = String.format('%f', 101.00); // Float value String str4 = String.format('%x', 101); // Hexadecimal value String str5 = String.format('%c', 'c'); // Char value System.out.println(str1); System.out.println(str2); System.out.println(str3); System.out.println(str4); System.out.println(str5); } } 
Тествайте сега
 101 Amar Singh 101.000000 65 c 

Java String format() Метод Пример 3

Освен форматиране, можем да зададем ширина, подложка и т.н. с всякаква стойност. Нека видим пример, в който задаваме ширина и подложка за целочислена стойност.

 public class FormatExample3 { public static void main(String[] args) %10d } 
Тествайте сега
 101 | 101| |101 | | 101| |0000000101|