【发布时间】:2016-11-20 19:33:28
【问题描述】:
我正在编写一个必须打乱单词的程序。首先,我使用 .reverse 反向读入单词。然后我把字符串变成了一个charArray。我想创建一个for循环来确定第一个字母是否是“A”,如果是,那么我必须看看下一个字母是否不是“A”。如果不是,那么我想交换这两个字母。如果两个字母中的任何一个具有;准备好被交换,则它们不能再次交换。 一些例子是 输入:“TAN” 输出:“ATN” 输入:“ALACTRIC” 输出:“AALCTRIC” 输入:“叉子” 输出:“叉子”
到目前为止,这是我的代码:我不知道要在 for 循环中放入什么。谢谢!
import java.util.Scanner;
public class scrambleWordRetry {
public static void main(String[] args)
{
}
public static String scramble( Random random, String inputString)
{
Scanner scan = new Scanner(System.in);
System.out.println("Please enter a word to scramble.");
inputString = scan.nextLine();
char a[] = inputString.toCharArray();
for( int i=0 ; i<a.length-1 ; i++ )
{
}
return inputString;
}
}
【问题讨论】:
-
您的代码目前什么都不做,因为您没有在 main 方法中调用
scramble()。 -
您所询问的很多内容都是很好的伪代码,可以满足您的需求,但您还没有尝试自己实际实现所有这些。还有一个注意事项:为什么在立即为其赋值时将 inputString 作为参数。我要么将其作为参数删除,要么在方法外部读取字符串(我更喜欢这个,因为这允许您的方法适用于任何字符串,而不仅仅是通过扫描仪读取的字符串)
-
家庭作业项目?