我正在编写一个将使用多项式的Java程序。我需要能够根据用户输入的内容表达多项式。
例如,用户可能会输入以下字符串。
“2, -7, 8, 0, -1
”
此处的多项式为2 - 7 x + 8 x^2 - x^4
但这是抓住了。我不能使用解析将字符串中的每个数字拆分成单独的整数,这太简单了!因为String中可以包含任意数量的数字,所以此示例有5个数字,另一个可能有6个或更少。
关于如何在Java中表达多项式的任何想法?
答案 0 :(得分:2)
String[] split = values.split(",\\s*");
这个正则表达式还会处理额外的空格。
答案 1 :(得分:1)
您应该使用 String.split()并通过Integer.valueOf()调用循环运行它。
答案 2 :(得分:1)
关于如何在java中表达多项式的任何想法?
在我看来,最简单的方法是拥有一系列int
(或float
/ double
)系数。数组中元素的数量取决于多项式的次数。
我将它包装在一个类中并使用String.split()
与Integer.valueOf()
(或Double.valueOf()
/ Float.valueOf()
)从String
构建它。
答案 3 :(得分:1)
如果您无法使用String.split()
和Integer.parseInt()
,那么:
Polynomial
类,在其构造函数中使用String
参数和(
getNumber
和indexOf
返回字符串部分的substring
方法getCount
方法,用于计算字符串或
Iterator
实施)
答案 4 :(得分:1)
你可以使用String.split()
拆分字符串,而不知道组件的数量。它将为您分配适当数量的组件。
然后将其转换为int[]
类型的数组,表示您的多项式...
这里没有什么特别困难,一切都很简单。