2012-01-05 73 views
1

我正在用Java編寫一個程序,該程序將使用多項式。我需要能夠根據用戶輸入的內容來表示多項式。例如,用戶可能輸入以下字符串:將字符串轉換爲多項式

例如,用戶可能輸入以下字符串。 「2, -7, 8, 0, -1

這個多項式這裏將是2 - 7 x + 8 x^2 - x^4

但這裏的漁獲物。我無法使用解析將字符串中的每個數字拆分爲單獨的整數,這太容易了!因爲字符串可以有任意數量的數字,所以這個例子有5個數字,另一個可能有6個數字,或者小於這個數字。

關於如何在Java中表示多項式的任何想法?

回答

1

您應該使用String.split()並通過Integer.valueOf()調用循環運行它。

1

有關如何在java中表示多項式的任何想法?

我認爲最簡單的是具有int(或float/double)係數的陣列。數組中元素的數量取決於多項式的次數。

我在一類包裝這和使用String.split()Integer.valueOf()(或Double.valueOf()/Float.valueOf()),以從String構造它。

2
String[] split = values.split(",\\s*"); 

這個正則表達式也會照顧額外的空間。

1

如果您不能使用String.split()Integer.parseInt()則:

  • 做出Polynomial類,這需要String參數的構造函數中

和(

  • 一個getNumber方法它使用indexOfsubstring來返回String部分
  • 一個getCount方法,計數字符串中的逗號

1

您可以可以在不知道組件數量的情況下使用String.split()拆分字符串。它會爲您分配適當數量的組件。

然後將其轉換成int[]類型的數組,它代表了多項式......這裏

沒有什麼特別困難的,一切都非常簡單。