Có ai biết cách chuyển đổi một số nguyên thành một giá trị chuỗi với số chữ số được chỉ định trong việc sử dụng mã script Groovy không? Ví dụ, tôi muốn chuyển đổi các giá trị số nguyên 1, 2, 3, 4 thành chuỗi 4 chữ số thành "0001", "0002", "0003" và "0004".Làm thế nào để chuyển đổi một số nguyên thành một giá trị String với độ dài được chỉ định bằng cách sử dụng tập lệnh Groovy
12
A
Trả lời
17
Chỉ cần sử dụng Java'sString.format
:
def vals = [ 1, 2, 3, 4 ]
def strs = vals.collect {
String.format("%04d", it)
}
strs.each { println it }
in:
0001
0002
0003
0004
Các tùy chọn khác can be found here
3
Bạn có thể sử dụng String.format()
như được mô tả trong JN1525-Strings
values = [1, 2, 3, 4]
formatted = values.collect {
String.format('%04d', it)
}
assert formatted == ['0001', '0002', '0003', '0004']
4
Sử dụng sprintf
, được thêm vào lớp Object nên nó luôn luôn có sẵn:
assert sprintf("%04d", 1) == "0001"
Xem JDK documentation for the format string để biết thêm thông tin.