⑴ 求編寫一個超級簡單的Java的程序源代碼
你好
很高興能夠回答你的問題。
我幫你實現了一個復數類,並且可以執行復數的加減,乘除你再寫兩個方法就可以了:
代碼如下:
public class complie {
int i,j;
public complie(int i,int j)//構建一個復數類
{
this.i=i;
this.j=j;
}
complie add(complie c)//復數加法
{
int l,k;
l=c.i+i;
k=c.j+j;
return (new complie(l,k));
}
complie cut(complie c)//復數減法
{
int l,k;
l=i-c.i;
k=j-c.j;
return (new complie(l,k));
}
void ToString()//將復數輸出
{
System.out.println("復數為:"+i+"+"+j+"i");
}
public static void main(String[] args)
{
complie a=new complie(4,5);
complie b=new complie(2,3);
System.out.println("構造的復數類為:");
a.ToString();
b.ToString();
System.out.println("運算復數a+b=:");
a.add(b).ToString();
System.out.println("運算復數a-b=:");
a.cut(b).ToString();
}
}
運行結果:
--------------------Configuration: <Default>--------------------
構造的復數類為:
復數為:4+5i
復數為:2+3i
運算復數a+b=:
復數為:6+8i
運算復數a-b=:
復數為:2+2i
Process completed.
程序我已經調試通過了的。
希望能幫到你,同時希望你能採納我的答案,謝謝!
⑵ 用JAVA從字元串中提取數字,可以一次提取出小數,負數
String sample="-12.4+5i";
double a;
double b;
if(sample.indexOf("i")>0){
//是復數,分開提取
int posPlus=sample.lastIndexOf("+");
int posMinus=sample.lastIndexOf("-");
int split;
if(posPlus>posMinus){
split=posPlus;
}else{
split=posMinus;
}
String strA=sample.substring(0,split);
String strB=sample.substring(split,sample.length()-1);
a=Double.parseDouble(strA);
b=Double.parseDouble(strB);
}else{
//不是復數,直接提取
a=Double.parseDouble(sample);
b=0;
}