Formatiert mit Java LPAD, RPAD. Füllen Sie angegebene Zeichen links und rechts von einer Zeichenfolge aus
JavaAnschließend können Sie die SQL-Funktion für Zeichenfolgen verwenden.LPAD,,RPADHier ist eine Beispielquelle, die den gleichen Prozess ausführt.
diese sindFormat mit fester LängeSehr nützlich im Umgang mit.
- LPAD...Gibt eine Zeichenfolge zurück, die auf der linken Seite der Zeichenfolge mit wiederholten Zeichen gefüllt ist, sodass die Gesamtzahl der Zeichen der angegebenen Anzahl von Ziffern entspricht.
- RPAD...Füllt eine wiederholte Zeichenfolge auf der rechten Seite einer Zeichenfolge aus und gibt sie zurück, sodass die Gesamtzahl der Zeichen der angegebenen Anzahl von Ziffern entspricht.
Beispielprogramm
/**
* Führen Sie RPAD durch.
* Fügen Sie die angegebene Zeichenfolge [addStr] rechts von der Zeichenfolge [str] bis [len] hinzu.
* Bis zum Füllen einführen.
* @param str Zielzeichenfolge
* @param len Anzahl der nachzufüllenden Ziffern (gibt die Größe nach der Durchführung von RPAD an)
* @param addStr String zum Einfügen
* @return Der String nach der Konvertierung.
*/
öffentlicher statischer String rpad(String str, int len, String addStr) {
return fillString(str, „R“, len, addStr);
}
/**
* Fügen Sie die Zeichenfolge [addStr] hinzu, die der Zeichenfolge [str] hinzugefügt werden soll.
* An [Position] einfügen, bis [Länge] gefüllt ist.
*
* *Auch wenn [str] null oder ein leeres Literal ist, verwenden Sie [addStr]
* Gibt das eingefügte Ergebnis zurück, bis [len] gefüllt ist.
* @param str Zielzeichenfolge
* @param position Einfügen vor ⇒ L oder l Einfügen nach ⇒ R oder r
* @param len Anzahl der aufzufüllenden Ziffern
* @param addStr String zum Einfügen
* @return Der String nach der Konvertierung.
*/
öffentlicher statischer String fillString(String str, String position,
int len,
String addStr) {
if (addStr == null || addStr.length() == 0) {
wirft eine neue IllegalArgumentException
(„Der Wert der einzufügenden Zeichenfolge ist ungültig. addStr=“+addStr);
}
if (str == null) {
str = „“;
}
StringBuffer buffer = new StringBuffer(str);
while (len > buffer.length()) {
if (position.equalsIgnoreCase(“l”)) {
int sum = buffer.length() + addStr.length();
if (sum > len) {
addStr = addStr.substring
(0,addStr.length() – (sum – len));
buffer.insert(0, addStr);
}anders{
buffer.insert(0, addStr);
}
} anders {
buffer.append(addStr);
}
}
if (buffer.length() == len) {
return buffer.toString();
}
return buffer.toString().substring(0, len);
}
Ausführungsergebnis
◆Ausführungsbeispiel
public static void main(String[] args) { // Für lpad. Füllen Sie die Leerzeichen links aus, bis Sie 5 Ziffern erreicht haben. String ret = lpad("abc", 5 , " "); System.out.println("'" + ret + "'"); // Für rpad. Füllen Sie die Felder rechts aus, bis Sie 5 Ziffern erreicht haben. ret = rpad("abc", 5 , " "); System.out.println("'" + ret + "'"); // Wenn null ret = rpad(null, 5 , " "); System. out .println("'" + ret + "'"); }
◆Ausgabeergebnis
' abc' 'abc ' ' '