我的项目让用户输入三个单词,全部在一行中,(大于两个字符),例如:一个二三,将每个单词切掉一些字母(具体见下文),最后合并修改后的单词成为一个大词。
我用伪代码写了全部内容,但是我遇到了一个问题,就是如何使用子字符串方法确定一个单词何时结束,下一个单词是否开始。我认为我能做的就是以某种方式识别单词之间的空间,并将其作为突破点。我可以使用某种if语句吗?就像“if(nextchar ='')开始存储在下一个变量中一样?并且在while循环中适合所有这些?
如果我把它弄得太混乱了,这就是我教授给我的任务。请不要只给我答案,我宁愿指出正确的方向并弄明白。
谢谢!
答案 0 :(得分:4)
代码与文本的比率非常低。请修改rules以供将来参考。
更多point:
要求代码的问题必须表明对正在解决的问题的最小理解。包括尝试的解决方案,它们不起作用的原因以及预期的结果。
最后,请关注此checklist以了解您的下一个问题。否则,如果人们注意到这是一种反复出现的行为,你的接收会更糟糕。
答案 1 :(得分:1)
首先创建一个Scanner来阅读输入:
Scanner s = new Scanner(System.in);
然后这些来读取用户的三个输入(一个接一个地输入):
first = s.nextLine();
second = s.nextLine();
third = s.nextLine();
最后,使用substring作为您的教授描述:
firstProcessed = first.substring(1, first.length - 1);
这将获得第一个输入单词,并将其从第二个字符切片到倒数第二个字符。
希望你能完全接受它。
答案 2 :(得分:0)
我会查看以下内容:String.substring()
命令或StringTokenizer
类。
String.subString()
将允许您根据indeces中断输入。您可以搜索空格的空格并从它们之间返回子串。
StringTokenizer
将允许您通过分隔符将String分解为标记,即您可以使用“”作为分隔符,并且标记生成器会将字符串分隔为空格之间的标记。