-3
次のスニペットのうち、実行時例外が発生します。次のように投げnull文字列をいくつかの値を持つ文字列に連結する際にエラーが発生します
public class Demo {
public static void main(String[] args) {
String org="This is the new shit.This is the new.";
String search="is";
String sub="was";
int i;
String result="";
do{
i=org.indexOf(search);
if(i==-1)
break;
result=result+org.substring(0,i);
result=result+sub;
result=result+org.substring(i+search.length());
org=result;
}while(i!=-1);
System.out.println(org);
}
}
例外は次のとおりです。この例外がスローされている理由
at java.util.Arrays.copyOfRange(Unknown Source)
at java.lang.String.<init>(Unknown Source)
at java.lang.StringBuilder.toString(Unknown Source)
at strings.Demo.main(Demo.java:16)
誰でも伝えることができます。あなたは、ループの終わりに
result = "";
「」になりリセットされませんので
を行います[それは私がコードを実行するときに何が起こるかではありません]( https://ideone.com/GIchoX)。 –
@Andy 5秒後に期限を迎えたので、彼のコードは終了せず、 "OutOfMemoryError"が発生したとき例外をスローします。 – Tyler
@SHREY Javaプログラムのデバッグ方法を学びます。 –