Java,返回int的格式化字符串

Java,返回int的格式化字符串,java,string,int,return,tostring,Java,String,Int,Return,Tostring,我刚刚开始学习Java,现在我需要制作一个Java函数,返回一个格式化的字符串表示int。 此函数必须返回“001”,而不是仅返回1,“010”,而不是仅返回10,依此类推。。。我的函数如下所示: int value = 1; public String getcountervalue() { String Return_string = Integer.toString(value); return (Return_string); } 这只是更大代码的一小部分。值的计数由代码

我刚刚开始学习Java,现在我需要制作一个Java函数,返回一个格式化的
字符串
表示
int
。 此函数必须返回
“001”
,而不是仅返回
1
“010”
,而不是仅返回
10
,依此类推。。。我的函数如下所示:

int value = 1;

public String getcountervalue() {
   String Return_string = Integer.toString(value);
   return (Return_string);
}
这只是更大代码的一小部分。
值的计数由代码的另一部分处理。我猜
Integer.toString
部分会将
int
转换为
字符串,或者?但是如何使其正确格式化(如上所述)

很抱歉,如果以前有人问过这个问题,我无法找到它

我使用的是Java1.7

公共字符串getcountervalue(){
public String getcountervalue() {
   String Return_string = Integer.toString(value);

   while(Return_string.length < 3){
       Return_string = '0'+Return_string;
   }

   return (Return_string);
}
字符串返回\u String=Integer.toString(值); while(返回字符串长度<3){ Return_string='0'+Return_string; } 返回(返回字符串); }
公共字符串getcountervalue(){
字符串返回\u String=Integer.toString(值);
while(返回字符串长度<3){
Return_string='0'+Return_string;
}
返回(返回字符串);
}

有一个方便的
format()
方法,由
String
提供

在您的情况下,类似这样的事情应该可以做到:

public String getCounterValue(int value) {
    return String.format("%03d", value);
}

有一个方便的
format()
方法,由
String
提供

在您的情况下,类似这样的事情应该可以做到:

public String getCounterValue(int value) {
    return String.format("%03d", value);
}

(i=0;i)的



用于(i=0;这个问题似乎离题了,因为它要求实现一个需求,而不是在实现需求时就遇到的特定问题寻求帮助。@T.J.Crowder我知道这可以通过if/else语句来实现,但这会是一个丑陋的锁定,所以我需要知道是否有更好的方法这个。至少对我来说,这是一个在实施过程中遇到的问题,我需要帮助。我知道我没有在主要帖子中对此发表任何意见,但事实上我知道一些方法,但没有一种是好的。@Brian u是对的,这是一个重复,很抱歉我在发布此帖子时找不到这个问题pears似乎离题了,因为它要求实现一个需求,而不是在实现需求时就遇到的特定问题寻求帮助。@T.J.Crowder我知道这可以通过if/else语句来实现,但那将是一个丑陋的锁定,所以我需要知道是否有更好的方法来实现。至少是这样对我来说,在实现“我需要帮助”时遇到了一个问题。我知道我在主要帖子中没有提到这一点,但我确实知道一些方法,但没有一种是好的。@Brian u是对的,这是一个重复,很抱歉,在我写这篇帖子时找不到它。这是一种处理问题的糟糕方式问题。Java提供了许多方法来实现这一点。除了数字格式化程序之外,还有什么方法可以实现这一点呢?@LoganMurphy它的核心归结为
printf
,Java通过各种方法和类公开了这一点。
String.format()
例如,如果是为了学习,我不会说这种方法很糟糕。这段代码可能会帮助别人解决更大的问题,或者解释Java是如何用
String.format()解决这个问题的
这是一种很糟糕的解决问题的方法。Java提供了很多方法来解决这个问题。除了数字格式化程序之外,你还可以怎么做呢?@LoganMurphy归根结底是
printf
,Java通过各种方法和类公开了这一点。
String.format()
例如,如果是为了学习,我不会说这种方法很糟糕。这段代码可能会帮助别人解决更大的问题,或者解释Java是如何用
String.format()解决这个问题的
你为什么要使用方法2?他刚开始学习java,长途跋涉可能会帮助他练习和更好地理解程序应该做什么。我理解你的意思,就像我学习了快速排序、合并排序等一样。但是,没有人会在这里用谷歌搜索来解决生产中的这个问题曾经使用过方法2。此外,方法2不能处理任何超过100的数字。他想数到100。你为什么要使用方法2?他刚开始学习java,走了很长的路可能会帮助他练习并更好地理解程序应该做什么。我理解你的意思,就像我学习了快速排序、合并排序等一样。然而,在这里用谷歌搜索试图在生产中解决这个问题的任何人都不应该使用方法2。此外,方法2不处理任何超过100的数字。他想数到100
for (i=0; i<=9; i++){
    System.out.println("00"+i)
}
for (i=10; i<=99; i++){
    System.out.println("0"+i)
}
if(i=100){
    System.out.println(i) 
}