-1
很抱歉,如果我沒有任何感覺,我沒有太多的實踐項目/字符串獲取輸入的問題?
你好,我已成立了項目舉行了一組這意味着可以放置一個基於文本的地圖上字符的,但是當我要求字符,有一個錯誤,說明它必須是一個字符串類型。有沒有辦法將我的項目轉換爲字符串,或允許輸入項目?在此先感謝
錯誤是用戶嘗試輸入符號的位置。我知道我可以使用string.valueof,但我不確定在哪裏實現它。
//imports
import java.util.Scanner;
import java.util.Random;
public class main {
public static void main(String[] args) {
Scanner reader = new Scanner(System.in);
ABug[] BugObj = new ABug[4]; //Creating object BugObj of class ABug
int loop = 4;
int i = 0;
int cycles;
MyClass worldnew = new MyClass();
System.out.println("Please enter the number of cycles you wish to run:");
cycles = reader.nextInt(); //getting the amount of cycles to be run
System.out.print("____Current World____\n\n");
worldnew.printWorld(); //calling method to print out world
System.out.println("____Key____\n_F_ - Food\n_O_ - Object\n_ _ - Space\nSymbol - Bug");
do{
BugObj[i] = new ABug(); //creating instance
System.out.print("Please enter the symbol which you wish to represent the bug:");
BugObj[i].symbol = reader.next();
System.out.print("Please enter the name of the bug:");
BugObj[i].name = reader.next();
System.out.println("Please enter the species of the bug:");
BugObj[i].species = reader.next();
System.out.println("Please enter the horizontal position of the bug:");
BugObj[i].horpos = reader.nextInt();
System.out.println("Please enter the vertical postion of the bug:");
BugObj[i].vertpos = reader.nextInt();
System.out.println("_______________ Bug " +(+i+1) + " _______________\n");
System.out.println("Symbol: " + BugObj[i].symbol); //Printing bug information out
System.out.println("Name: " + BugObj[i].name);
System.out.println("Species: " + BugObj[i].species);
System.out.println("Horizontal Position: " + BugObj[i].horpos);
System.out.println("Vertical Postion: " + BugObj[i].vertpos + "\n\n");
move(BugObj[i], worldnew);
i++;
System.out.println("Would you like to enter another bug? \n 0-No, 1-Yes\n");
loop = reader.nextInt();
}while(loop == 1);
}
public static void move(ABug bug, MyClass worldnew){
Scanner reader = new Scanner(System.in);
System.out.println("Would you like this bug to move?\n 0-No, 1-Yes\n");
if (reader.nextInt() == 0)
{
System.exit(0);
}
int x = bug.horpos;
int y = bug.vertpos;
Item a = bug.symbol;
worldnew.setMap(x,y,bug.symbol);
worldnew.printWorld();
//get corordinate of bug
//set map[coor] = symbol
//print out map
//int r = (int) (Math.random() * (2- -2)) + -2;
//int originalHorpos = bug.horpos;
//int originalVertpos = bug.vertpos;
//bug.horpos = originalHorpos + r;
//bug.vertpos = originalVertpos + r;
//bug.horpos += r;
//bug.vertpos += r;
System.out.println("New Horizontal Position: " +bug.horpos);
System.out.println("New Vertical Postion: " +bug.vertpos);
}
}
enum Item {
OBJECT ('O'),FOOD ('F'), SPACE (' ');
private final char symbol;
Item(char symbol) {
this.symbol = symbol;
}
char getSymbol() { return symbol; }
}
class MyClass {
public void setMap(int x, int y, Item symbol)
{
this.map[x][y] = symbol;
}
Item[][] map = new Item[15][25];
public void printWorld() {
int v, h; //v - vert, h - hor
for (v=1; v<=15; ++v)
{
for (h=1; h<=25; ++h)
{
final Item[] items = {Item.OBJECT, Item.FOOD, Item.SPACE, Item.SPACE, Item.SPACE, Item.SPACE, Item.SPACE, Item.SPACE};
Random random = new Random();
int selection = random.nextInt(items.length);
map[v-1][h-1] = items[selection];
System.out.print(map[v-1][h-1].getSymbol() + "_");
}
System.out.printf("\n");
}
}
}
class ABug { //ABug class
int horpos, vertpos, energy, id;
String species, name;
Item symbol;
}
請打印您的堆棧跟蹤 – therealprashant
錯誤:類buglife.main沒有找到Main方法,請定義主方法如下: public static void main(String [] args) 或者JavaFX應用程序類必須擴展javafx.application.Application。 ? – Logic
使用'public static void main(String [] args)'來定義你的主要方法。 – khelwood