【问题标题】:Java concat with integer and stringJava concat 与整数和字符串
【发布时间】:2016-03-06 00:13:07
【问题描述】:

我想编写一个程序,将整数和字符串传递给返回值的方法。我知道如何做这部分,但是我需要连接 int(即 2)和字符串(表示“再见”),并让它打印字符串 int 的编号。 (例如:再见)。

我会尽快回复澄清问题。

【问题讨论】:

  • 你能告诉我们你到目前为止做了什么吗?
  • 我不太了解您的任务。您需要连接 int 和字符串,还是需要打印字符串n 次,n 是int?
  • 您是否事先知道连接的字符串是消息优先还是 int 优先?这意味着字符串是“Bye2”还是“2Bye”?
  • @RahulSharma 他想要bye bye 如果int param 是2 并且Stringbye
  • @VikrantKashyap 我想知道他为什么要连接字符串和 int。

标签: java concatenation


【解决方案1】:

您可以像这样在 Java 中将 String 与 int 连接起来:

String result = "some " + 2;

字符串应该放在这个“+”运算符的前面。

【讨论】:

  • 谢谢,一旦我使用开发工具包到我的电脑上,我会试试这个。
【解决方案2】:

试试这个。

static String repeat(int times, String s) {
    return IntStream.range(0, times)
        .mapToObj(x -> s)
        .collect(Collectors.joining(" "));
}

System.out.println(repeat(2, "bye"));
// -> bye bye

【讨论】:

    【解决方案3】:
    public String repeatString(String str, int n)
    {
        if(n<1 || str==null)
            return str;
        StringBuilder sb = new StringBuilder();
        for(int i=0; i<n; i++)
        {
            sb.append(str);
            if(i!=(n-1))        // If not the last word then add space
                sb.append(" ");
        }
        return sb.toString();
    }
    

    【讨论】:

    • 从 java 7 开始,使用 + 附加字符串在内部使用 StringBuilder。如果您只使用 + 来追加而不是初始化 StringBuilder 并在对象上调用追加,它会使代码更具可读性。
    【解决方案4】:

    试试这个

    private String repeateAndConcateString (int prm_Repeat, String prm_wordToRepeat){
                if(prm_Repeat <=0 || prm_wordToRepeat == null){
                          return "";
                 }
                String temp = "";
                for(int i= 1 ; i<=prm_Repeat ; i++){  // loop through the number of times to concatinate. 
                      temp += prm_wordToRepeat; //Concate the String Repeatly 1 to prm_Repeat 
                 }
               return temp;   // this will return Concatinate String.
    }
    

    【讨论】:

    • 循环编号让人困惑。如果将 temp 初始化为空字符串并运行循环以条件 '
    【解决方案5】:

    对于字符串重复,Apache StringUtils 有方法repeat

    或者没有外部的实现:

    public static String repeat(int n, String s){
        StringBuilder sb = new StringBuilder(n * s.length());
        while(n--)
            sb.append(s);
        return sb.toString();
    }
    

    整数可以通过两个引用转换为字符串:String.valueOfInteger.toString。字符串连接的工作方式类似于数学加法 (+)。

    【讨论】:

    • 他是初学者而不是专业人士,他可以找到third party jars并将其添加到JDKext文件夹。所以,处理基础知识.. 我知道你也给出了解决方案,但这并不是他真正想要的
    • 好的,我会根据他的关卡进行编辑,但 StringUtils 留待以后使用。
    • 并且从 java 7 开始在内部使用 StringBuilder 连接字符串,所以这并不重要。 JavaDoc
    猜你喜欢
    • 1970-01-01
    • 2019-04-16
    • 1970-01-01
    • 2019-12-15
    • 1970-01-01
    • 2010-09-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多