0

我需要从用户那里获取一些单词,然后输出一个最终单词,该单词由用户输入的单词的最后一个字母的连接形成。

这是代码。但是我如何从循环中取出这些字母并将它们连接起来?

import java.util.Scanner;
public class newWord {
    public static void main(String args[]) {

        System.out.println("How many words are you going to enter?");
        Scanner num = new Scanner(System.in);
        int number = num.nextInt();
        System.out.println("Please Enter the "+number+" words:");
        for(int n=1;n<=number;n++)
        {

            Scanner words = new Scanner(System.in);
            String thisword = words.nextLine();

            char str2 = thisword.charAt(thisword.length()-1);
            System.out.println(str2);
        }

    }
}
4

5 回答 5

4

仅提示...因为这显然是某种学习练习。

但是我如何从循环中取出这些字母并将它们连接起来?

你没有。你在循环中连接它们。

字符串连接可以使用 String+运算符或StringBuilder.

剩下的就看你了。(请忽略发布完整解决方案的 dingbats 并自己解决。它会对你有好处!)

于 2013-02-23T07:22:50.513 回答
1

您可以使用StringBuilder类通过方法连接字符串中的最新字符append

于 2013-02-23T07:22:16.977 回答
1

我相信(如果我错了,请纠正我)您要求将每个单词的最后一个字母变成一个最终单词。您需要做的就是获取每个最后的字母并将它们添加到一个字符串中以保存它们。在整个for循环之后,变量appended应该是您请求的单词。

public static void main(String args[]) {

    System.out.println("How many words are you going to enter?");
    Scanner num = new Scanner(System.in);
    int number = num.nextInt();
    System.out.println("Please Enter the "+number+" words:");
    String appended = ""; // Added this
    for(int n=1;n<=number;n++)
    {

        Scanner words = new Scanner(System.in);
        String thisword = words.nextLine();

        char str2 = thisword.charAt(thisword.length()-1);
        appended +=str2; // Added this
        System.out.println(str2);
    }

}
于 2013-02-23T07:24:30.123 回答
1

只是你错过了将最终价值保留在一个地方并最终打印的东西

  public static void main(String args[]) {

            System.out.println("How many words are you going to enter?");
            Scanner num = new Scanner(System.in);
            int number = num.nextInt();
            System.out.println("Please Enter the "+number+" words:");
            StringBuffer sb = new StringBuffer();
            for(int n=1;n<=number;n++)
            {

                Scanner words = new Scanner(System.in);
                String thisword = words.nextLine();

                char str2 = thisword.charAt(thisword.length()-1);
                sb.append(str2);

            }
            System.out.println(sb.toString());

        }
于 2013-02-23T07:25:21.783 回答
1

通过StringBuilderStringBuffer类你会得到你的答案..

于 2013-02-23T07:26:16.923 回答