2016-08-09 11 views
4
String replaceSubString(String orignal, int startIndex, int endIndex, String replaceWith){ 

    StringBuffer buffer = new StringBuffer(orignal); 

    if ((action.getEndindex() - action.getStartindex()) < 0) { 
     if (replaceWith.length() > (startIndex - endIndex)) { 

       throw new RuntimeException("Replace string lenght not same as difference of start & end index."); 

     } 
     buffer = buffer.replace(endIndex, startIndex, replaceWith); 
    } else { 
     if (replaceWith.length() > (endIndex - startIndex)) { 

       throw new RuntimeException("Replace string lenght not same as difference of start & end index."); 

     } 
     buffer = buffer.replace(startIndex, endIndex, replaceWith); 
    } 
    return buffer.toString(); 
} 

こんにちは、これは私のコードは、 '定義して、専用の例外をスローする一般的なものを使用する代わりに "表示されているコードの品質をチェックしながらこの問題を解決するには?「一般的なものを使用するのではなく、専用の例外を定義してスローする」を解決する方法私のコードで

+0

長さのスペルを修正しました。それは私の気分を改善し、私は答えを掲示するでしょう。 –

答えて

1

RuntimeExceptionこれはかなり一般的なものです。何が間違っているのかをより正確に伝えるために、StringLengthException(または名前を付けたいもの)を使用するように指示しています。それを代わりに投げること)

+0

ur即時返信ありがとうございます:-) – minnie

1

非常に一般的なRuntimeExceptionを投げるのではなく、IllegalArgumentException(メソッドが不正な引数を受け取ったときに例外を投げるので)またはIndexOutOfBoundsException(メソッドが有効な範囲外のインデックスを受け取ったときに例外を投げるので)。

+0

ur即時返信ありがとうございました:-) – minnie

0

事前定義済みのJava例外クラスを使用する代わりに、独自の例外を定義するようにコードの品質が要求されています。

RuntimeExceptionから継承した新しいクラス(ReplaceStringLengthExceptionなど)を宣言するか、RuntimeExceptionから派生した例外をスローすることができます。

+0

ur即時返信ありがとう:-) – minnie

関連する問題