3 回答

TA貢獻1802條經驗 獲得超5個贊
如何解析不同的數據類型:int、char、double、String 和 boolean
為了:
int x = Integer.parseInt(s)
char x = s.charAt(0)
double x = Double.parseDouble(s)
String x = s
boolean x = Boolean.parseBoolean(s)

TA貢獻1845條經驗 獲得超8個贊
當前的問題是 thaArrayList<String> stats = new ArrayList<String>();
強制您讀取的任何值都是String
。如果您了解了類,那么您可以創建一個模擬足球運動員的類:讓我們以它FootballPlayer
為例。
您將FootballPlayer
擁有許多不同類型的字段。你會有一個表示lastName
is a String
、yearsExp
that is anint
等等。
然后,這里:
while(inputFile.hasNext()) { stats.add(inputFile.nextLine()); }
您可以保留與您要讀取的字段相對應的索引。lastName
可以對應于index
0、1yearsExpr
等。然后,根據索引值(您可以使用語句),您可以調用返回適當類型switch
的不同方法,例如,如果索引為 1 (for )。調用此適當的方法后,您可以將返回值分配給 實例中的相應字段。Scanner
nextInt()
yearsExpr
FootballPlayer
將來,整個過程可以通過使用庫來解析您正在使用的數據格式來為您處理,例如 CSV 解析器(因為看起來數據是用逗號分隔的)。

TA貢獻1784條經驗 獲得超8個贊
您可以用 或任何其他常用分隔符分隔輸入,,然后嘗試一一解析。
String input = "Tom, 15, 6, 86.4"; // name, age, grade, mark
String[] inputs = input.split(", "); // [ Tom, 15, 6, 86.4 ]
for (String in : inputs) {
if (isInteger(in)) {
// something
} else if (isString(in)) {
// other thing
} // etc
}
添加回答
舉報