[
https://issues.apache.org/jira/browse/MATH-1408?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15958187#comment-15958187
]
Bruno P. Kinoshita commented on MATH-1408:
------------------------------------------
[~erans] breaks binary compatibility, but gives an example of a generified
Frequency class
https://github.com/apache/commons-math/compare/master...kinow:MATH-1408-generic-frequency?expand=1
This removes the ClassCastException, as well as suppress warnings annotations
that we had. Users wouldn't be able to use Frequency for three different types
(i.e. int, long, char). Instead, they would either have to maintain multiple
Frequency objects, or convert everything to, say, Long.
> Do not use exceptions for control flow
> --------------------------------------
>
> Key: MATH-1408
> URL: https://issues.apache.org/jira/browse/MATH-1408
> Project: Commons Math
> Issue Type: Task
> Reporter: Gilles
> Priority: Minor
> Labels: control, exception, flow
> Fix For: 4.0
>
>
> There are several occurrences where exception is used to control flow.
> Code such as
> {noformat}
> try {
> // block A
> } catch (ClassCastException e) {
> // block B
> }
> {noformat}
> where "block A" is trying to cast an object "o" to "SomeClass", should be
> changed to
> {noformat}
> if (o instanceof SomeClass) {
> // block A
> } else {
> // block B
> }
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)