【发布时间】:2014-09-15 08:49:23
【问题描述】:
我的老师希望我们在控制台周围移动一个字母“o”。字母“o”已被编码以显示在控制台屏幕的中心。我已经创建了movingRight 和movingDown 方法,但是我很难创建movingLeft 和movingUp 方法。这是我的代码:
import java.util.Scanner;
public class Main {
static String letter = "\n\n\n\n O";
String whenmovingup = letter.substring(0, 1);
char whenmovingleft = letter.charAt(letter.length() - 2);
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print(letter);
input.nextLine();
if (input.equals("left")) {
movingLeft();
}
if (input.equals("right")) {
movingRight();
}
if (input.equals("up")) {
movingUp();
}
if (input.equals("down")) {
movingDown();
}
}
public static void movingRight(){
letter = " " + letter;
}
public static void movingDown(){
letter = "\n" + letter;
}
public static void movingLeft(){
letter.remove(whenmovingleft);
}
public static void movingUp(){
letter.remove(whenmovingup);
}
}
我在从原始字符串字母中删除 whenmovingfeft 和 whenmovingup 子字符串时遇到问题。它给出了一个错误('The method remove(char) is undefined for the type String'),我不确定需要做什么。
有谁知道如何解决这个问题? 提前感谢所有回复。
【问题讨论】:
-
“它给了我错误” - 你到底遇到了什么错误?请将错误消息编辑到您的问题中。
-
感谢您的帮助格雷格。弹出窗口告诉我这是使用 String 类型的无效方式。
-
'String类型的remove(char)方法未定义'
-
removes 没有remove方法。如果要从String中删除一个字符,并且知道要删除的字符的位置,则基本上需要使用substring,一次或两次。 -
现在出现了一个新错误。 '类型不匹配:无法从 char 转换为 String'
标签: java string methods substring