第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

關(guān)于java的小問題,請高手幫忙解決,急

關(guān)于java的小問題,請高手幫忙解決,急

不負(fù)相思意 2018-12-06 18:48:03
這是一個關(guān)于復(fù)數(shù)的小程序,運(yùn)行表示由字符串構(gòu)造復(fù)制對象這個構(gòu)造函數(shù)出現(xiàn)問題,求幫忙,運(yùn)行提示的錯誤如下: Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -2 ?at java.lang.String.substring(Unknown Source) ?at 異常處理20121107.Complex2.<init>(Complex2.java:31) ?at 異常處理20121107.Complex2.main(Complex2.java:100) 程序如下: package 異常處理20121107; public class Complex2 implements Comparable1 { ?public double real,imag; ?public Complex2(double real,double imag) ? { ?? this.real=real; ?? this.imag =imag; ? } ?public Complex2() ?{ ?? this(0,0); ?} ? public Complex2(Complex2 d) ?{ ??this.real =d.real ; ? ?this.imag =d.imag ; ? } ?public Complex2(String s) ? { ? ?int i,n; ??n=0; ? ?String d1,d2; ??for(i=0;i!='\0';i++)?? ???? { ?? ???? ?n++; ?? ??? ?if(s.charAt(i)=='+') ?? ??????? ??break; ? ????? } ??d1=s.substring(0, i-1); ? ?d2=s.substring(i,n-1); ? ?this.real =Double.parseDouble(d1); ??this.imag =Double.parseDouble(d2); ?} ?public String toString() ?{ ?? ???? String d1,d2,d3; ??? ??d1=String.valueOf(this.real); ???? ??d2=String.valueOf(this.imag); ????? ???d3=d1+'+'+d2; ?? ???? ???return d3; ? ? ?} ?public double getModel() ?{ ??return Math.sqrt(real*real+imag*imag); ?} ?public void add(Complex2 c) ?{??? ???this.real+=c.real; ??this.imag+=c.imag; ? } ?public static Complex2 add(Complex2 c1,Complex2 c2) ?{ ?? Complex2 c3=null; ??c3.real=c1.real+c2.real; ??c3.imag=c1.imag+c2.imag;?? ?? return c3; ?} ?public void subtract(Complex2 c) ?{??? ??this.real-=c.real; ? ?this.imag-=c.imag; ?} ?public static Complex2 subtract(Complex2 c1,Complex2 c2) ?{ ?? Complex2 c3=null; ? ?c3.real=c1.real-c2.real; ??c3.imag=c1.imag-c2.imag;?? return c3; ? } ?public boolean equals(Complex2 c) ? { ?? ?????? if(real==c.real&&imag==c.imag) ? ???? ??return true; ???? ??else ? ?? ???? return false; ? } ?public boolean Comparable1(Complex2 c) ?{ ? ????? if((this.real*this.real+this.imag*this.imag-c.imag*c.imag-c.real*c.real)>0) ???????? ?return true; ? ???? ?else ?? ???????? ?return false; ? } ?public static void main(String args[]) ? { ? ?Complex2 c1=new Complex2(12.3,3.4); ? ?Complex2 c2=new Complex2(3.8,3.6); ? ?Complex2 c3=new Complex2(72.5,10.4); ?? Complex2 c4=new Complex2(12.3,3.4); ? Complex2 c5=new Complex2("12+5i"); ? ?String s; ? ?? System.out.println(c1.real+"+"+c1.imag+"i"); ??System.out.println(c2.real+"+"+c2.imag+"i"); ? ?System.out.println(c3.real+"+"+c3.imag+"i"); ?? System.out.println(c4.real+"+"+c4.imag+"i"); ?? ??System.out.println(c5.real+"+"+c5.imag+"i"); ?? ??s=c1.toString(); ? ?System.out.println(s); ??System.out.println(c2.getModel()); ??c3.add(c4); ? ?System.out.println(c3.real+"+"+c3.imag+"i"); ? ?if(c1.equals(c4)) ? ??System.out.println("c1>c4"); ? ?else ??? System.out.println("c1<c4"); ?? ?if(c2.Comparable1(c3)) ?? ?System.out.println("c2的模大于c3的模"); ? ?else ?? ?System.out.println("c2的模小于c3的模"); ?} }
查看完整描述

7 回答

?
SMILET

TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超4個贊

我剛才驗(yàn)證過了,是d1=s.substring(0, i-1)的參數(shù)i-1可能會得到一個負(fù)數(shù)的值,因?yàn)槟闱懊媸褂玫膕.charAt(i)返回的i的值可能是0,而substring(int beginIndex,int endIndex)這個方法返回的是一個字串,改字串以索引為beginIndex的字符開始直到索引為endIndex的字符結(jié)束(包含索引為beginIndex的字符,不包含索引為endIndex的字符),你出錯的地方正是在對這兩個知識點(diǎn)的理解上。我看了你的題目真心沒看懂你要做什么,所以也不好給你改代碼以符合你的題目要求,你可以根據(jù)你的題目的要求做一些變動去解決上述兩個問題。下述編譯結(jié)果只是我強(qiáng)制用if語句限定執(zhí)行條件后得到的一個結(jié)果:

查看完整回答
反對 回復(fù) 2018-12-16
?
四季花海

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超5個贊

數(shù)組越界了,自己查查吧

查看完整回答
反對 回復(fù) 2018-12-16
?
翻翻過去那場雪

TA貢獻(xiàn)2065條經(jīng)驗(yàn) 獲得超14個贊

謝謝 啊,能不能告訴我應(yīng)該怎么改啊,剛學(xué)不怎么懂啊

查看完整回答
反對 回復(fù) 2018-12-16
?
手掌心

TA貢獻(xiàn)1942條經(jīng)驗(yàn) 獲得超3個贊

樓主是用C、C++的?

for(i=0;i!='\0';i++) ?

改為:

for(i=0;i<s.length();i++) ?

查看完整回答
反對 回復(fù) 2018-12-16
?
喵喵時光機(jī)

TA貢獻(xiàn)1846條經(jīng)驗(yàn) 獲得超7個贊

不是啊,用的myeclipse

查看完整回答
反對 回復(fù) 2018-12-16
?
茅侃侃

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個贊

改過還是不對啊

查看完整回答
反對 回復(fù) 2018-12-16
  • 7 回答
  • 0 關(guān)注
  • 660 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號