Как использовать String.format () в Java? [дубликат]
этот вопрос уже есть ответ здесь:
- как форматировать строки в Java 6 ответов
Я новичок в Java, и я использую Java-уроки thenewboston (youtube). На уроке 36-37 он начинает использовать строку.format (); который он не объяснял в прошлых учебниках. Вот код для класса, которым он был изготовление:
public class tuna {
private int hour;
private int minute;
private int second;
public void setTime(int h, int m, int s){
hour = ((h >= 0 && h < 24) ? h : 0);
minute = ((m >= 0 && m < 60) ? m : 0);
second = ((s >= 0 && s < 60) ? s : 0);
}
public String toMilitary(){
return String.format("%02d:%02d:%02d", hour, minute, second);
}
}
Так что он делает, он делает какой-то военный класс времени и использует форматирование строк. Поэтому я спрашиваю, Может ли кто-нибудь объяснить мне, как строка.format () работает и как работает форматирование выше. Спасибо за помощь!
2 ответов
он работает так же, как printf() C.
%s - > String
%d - > int
%f - > float
вперед
String.format("%02d", 8)
-> выход: 08
String.format("%02d", 10)
-> выход: 10
String.format("%04d", 10)
- > выход: 0010
таким образом, в основном, он будет заполнять число 0 перед выражением, переменной или примитивным типом, заданным в качестве второго аргумента, 0 будут дополнены таким образом, что все цифры удовлетворяют первому аргументу форматирование метода String API.
он просто принимает переменные hour
, minute
и second
и принесите ему формат 05:23: 42. Может быть, другим примером будет следующее:
String s = String.format("Hello %s answered your question", "placeofm");
когда вы печатаете строку, чтобы показать ее в консоли, она будет выглядеть так
System.out.println(s);
Привет placeofm ответил на ваш вопрос
прототип %02d
для десятичного числа с двумя цифрами. %s
для строки, как мое имя в образце выше. Если хочешь учиться Java вы должны прочитать документы. вот он для String
класс. Вы можете найти метод format с хорошим объяснением. Читать эти документы действительно важно даже не в Java.