如何将int更改为这样的字符串

时间:2015-10-18 23:20:44

标签: java

我正在尝试将int更改为字符串并将其打印出来。

int count;
    for(count = 0; count <= 99;count++)
    System.out.print( count+", ");
    System.out.print(100);

它将像1,2,3,4,5,6,7,8

可被3整除的数字将更改为树。 如果它可以被5整除,它将是“高”。 如果它可以被3&amp; 5,它将是“tigh”。

1,2,树,如图4所示,高,树,7,8-

我一直坚持如何改变它。

任何帮助?

5 个答案:

答案 0 :(得分:2)

根据您对@ BalwinderSingh评论的评论,它似乎与FizzBu​​zz类似。我将如何做到这一点:

for (int i = 0; i < 100; i++) {
    if (i % 15 == 0) { // % 3 && % 5
        System.out.print("tigh, ");
    } else if (i % 5 == 0) {
        System.out.print("high, ");
    } else if (i % 3 == 0) {
        System.out.print("tree, ");
    } else {
        System.out.print(i + ", ");
    }
}
System.out.print(100);

答案 1 :(得分:1)

根据您在此答案下的评论,您需要更新现有代码并将其替换为以下内容:

    int count;
    for(count = 1; count <= 99;count++){
    if(count%3==0 && count%5==0 ){
        System.out.print( "tigh, ");
    }
    else if(count%5==0 ){
        System.out.print( "high, ");
    }
    else if(count%3==0 ){
        System.out.print( "tree, ");
    }
    else{
        System.out.print( count+", ");  
    }


    }
    System.out.print(100);

希望这有帮助

答案 2 :(得分:0)

for (int i =0; i <= 99; i++) {
   if (i % 3 == 0)
      System.out.print("tree, ");
   else 
      System.out.print(i + ", ");

}

答案 3 :(得分:0)

试试这个,它有点复杂,但我想要独一无二:

for (int count = 0; count <= 99; count++) {
    System.out.print(count % 3 == 0 && count % 5 == 0 ? "tigh, " : (count % 3 == 0 ? "tree, " : (count % 5 == 0 ? "high, " : count + ", ")));
}
System.out.println(100);

答案 4 :(得分:0)

或者这样

    System.out.println(IntStream.rangeClosed(0, 100)
            .mapToObj(i -> i % 15 == 0 ? "tigh"
                          : i % 5 == 0 ? "high"
                          : i % 3 == 0 ? "tree"
                          : String.valueOf(i))
            .collect(Collectors.joining(", ")));

(由于看起来有错误而无法在Eclipse中编译:http://ideone.com/KZ79pk有效)

顺便说一下.. 100可以被3和5整除。所以如果你在作弊,不要println(100):)