[英]Making a word scrambler in java
import java.util.Scanner;
public class WordScrambler
{
public String prefix, inner, postfix, newword;
public static void main(String[] args)
{
Scanner sc = new Scanner (System.in);
String words = sc.nextLine();
System.out.println(words);
}
public void Scrambler()
}
String [] words = words.split(" ");
}
}
我不是很了解如何将我的变量“单词”放入我的加扰方法中,因此我可以将输入的每个单词拆分为单独的字符串,这样做时是否只是在声明一个新的数组单词? 我如何从上方获取该变量。 另外,我的system.out.println只是检查我的扫描仪是否工作。 还是我做对了,实际上是分开的话吗?
似乎您只是想将变量从一种方法传递给另一种方法。
旁注:在Java中,方法名称以小写字母开头,通常是动词:加扰而不是加扰
在:
public static void main(String[] args)
{
Scanner sc = new Scanner (System.in);
String words = sc.nextLine();
System.out.println(words);
}
您已经获得了输入,但是仍然没有任何地方可以发送它,因为您尚未创建WordScrambler的实例。
因此,让我们做一个:
WordScrambler wordScrambler = new WordScrambler();
好的,现在您可以访问加扰方法了,所以
wordScrambler.scramble( words )
会让事情动起来
现在,您需要对字符串进行一些打乱(在修复方法声明以接受String参数之后),例如将其拆分,混杂单词并输出结果。
import java.util.Scanner;
public class WordScrambler {
public String prefix, inner, postfix, newword;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String words = sc.nextLine();
WordScrambler wordScrambler = new WordScrambler();
wordScrambler.scrambler(words);
}
public void scrambler(String words) {
String[] word = words.trim().split(" ");
for (int i = 0; i < word.length; i++) {
System.out.println(word[i]);
}
}
}
您需要将变量作为参数传递给方法。 如果将方法static
,则可以从main()
调用它。
同样,将您的输入命名为(显然) input
,因为这就是它的意思。
这是我的处理方式:
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
String input = sc.nextLine();
System.out.println(scramble(input));
}
public static String scramble(String input) {
List<String> words = new ArrayList<String>(Arrays.asList(input.trim().split("\\s+")));
Collections.shuffle(words);
return words.toString().replaceAll("[^\\w ]", "");
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.