你的代碼有很多問題,最主要的一個吧就是你的inverse函數(shù)的參數(shù)沒傳進(jìn)去,你自己定義一個空矩陣num[][],計(jì)算秩,怎么算都是零,然后就返回 null,自然就報(bào)空指針異常了。我改好了程序,供你參考:

創(chuàng)新互聯(lián)建站是專業(yè)的禹州網(wǎng)站建設(shè)公司,禹州接單;提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行禹州網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
import?java.util.Scanner;
public?class?Project2?{
public?static?void?main(String[]?args)?{
Scanner?input?=?new?Scanner(System.in);
System.out.println("請依次輸入:a11、a12、a13、a21、a22、a23、a31、a32、a33\n");
int?i,?j;
double[][]?number?=?new?double[3][3];
double[][]?number0?=?new?double[3][3];
for?(i?=?0;?i??3;?i++)
for?(j?=?0;?j??3;?j++)
number[i][j]?=?input.nextDouble();
System.out.println("Input?Matrix?is?:");
System.out.println(number[0][0]?+?"?"?+?number[0][1]?+?"?"
+?number[0][2]);
System.out.println(number[1][0]?+?"?"?+?number[1][1]?+?"?"
+?number[1][2]);
System.out.println(number[2][0]?+?"?"?+?number[2][1]?+?"?"
+?number[2][2]);
number0?=?inverse(number);
if?(number0?!=?null)?{
System.out.println("Inverse?Matrix?is?:");
System.out.println(number0[0][0]?+?"?"?+?number0[0][1]?+?"?"
+?number0[0][2]);
System.out.println(number0[1][0]?+?"?"?+?number0[1][1]?+?"?"
+?number0[1][2]);
System.out.println(number0[2][0]?+?"?"?+?number0[2][1]?+?"?"
+?number0[2][2]);
}?else
System.out.println("矩陣的秩為零");
}
public?static?double[][]?inverse(double[][]?A)?{
double?z;
double?A1,?B,?C,?D,?E,?F,?G,?H,?I;
//?double?[][]?num?=?new?double?[3][3];
double[][]?num0?=?new?double[3][3];
System.out.println("Inverse?Matrix?A?is?:");
System.out.println(A[0][0]?+?"?"?+?A[0][1]?+?"?"?+?A[0][2]);
System.out.println(A[1][0]?+?"?"?+?A[1][1]?+?"?"?+?A[1][2]);
System.out.println(A[2][0]?+?"?"?+?A[2][1]?+?"?"?+?A[2][2]);
z?=?A[0][0]?*?A[1][1]?*?A[2][2]?+?A[2][0]?*?A[0][1]?*?A[1][2]?+?A[0][2]
*?A[1][0]?*?A[2][1]?-?A[0][2]?*?A[1][1]?*?A[2][0]?-?A[0][0]
*?A[1][2]?*?A[2][1]?-?A[2][2]?*?A[1][0]?*?A[0][1];
if?(z?==?0)
return?null;
else?{
A1?=?A[0][0];
B?=?A[0][1];
C?=?A[0][2];
D?=?A[1][0];
E?=?A[1][1];
F?=?A[1][2];
G?=?A[2][0];
H?=?A[2][1];
I?=?A[2][2];
num0[0][0]?=?1?/?z?*?(E?*?I?-?F?*?H);
num0[0][1]?=?1?/?z?*?(C?*?H?-?B?*?I);
num0[0][2]?=?1?/?z?*?(B?*?F?-?C?*?E);
num0[1][0]?=?1?/?z?*?(F?*?G?-?D?*?I);
num0[1][1]?=?1?/?z?*?(A1?*?I?-?C?*?G);
num0[1][2]?=?1?/?z?*?(C?*?D?-?A1?*?F);
num0[2][0]?=?1?/?z?*?(D?*?H?-?E?*?G);
num0[2][1]?=?1?/?z?*?(B?*?H?-?A1?*?H);
num0[2][2]?=?1?/?z?*?(A1?*?E?-?B?*?D);
return?num0;
}
}
}
包lipei;
進(jìn)口java.awt.FileDialog中;
進(jìn)口java.awt.Frame中;
進(jìn)口java.awt.Menu中;
進(jìn)口java.awt.MenuBar中;
進(jìn)口java.awt.MenuItem中;
進(jìn)口java.awt.event.ActionEvent;
進(jìn)口java.awt.event.ActionListener;
進(jìn)口java.awt.event.WindowAdapter ;
進(jìn)口java.awt.event.WindowEvent中;
進(jìn)口javax.swing.Icon;
進(jìn)口javax.swing.ImageIcon中;
進(jìn)口javax.swing.JLabel中;
公共類BufferTest {
@ SuppressWarnings(“折舊”)
公共靜態(tài)無效的主要(字串[] args){
/ / TODO代碼應(yīng)用程序的邏輯在這里
最后一幀F(xiàn) =新框架(“打開”);/ /標(biāo)題
f.setBounds(100,100,400,300);
最后的JLabel LBL =新的JLabel(); BR / f.addWindowListener(新WindowAdapter(){
公共無效windowClosing(WindowEvent E){
System.exit(0);
}
});
的MenuBar MB =新的菜單欄();
菜單M1 =新菜單(“photolist”);
菜單項(xiàng)MI2 =新的MenuItem(“打開”);
最后FileDialog的FD =新文件對話框(F,“照片公開”,是FileDialog.LOAD);
fd.show();
mi2.addActionListener(新的ActionListener(){/ /打開文件夾
公共無效的actionPerformed(ActionEvent的E){
如果{
fd.show()(fd.isShowing()!);
}
字符串文件名= fd.getDirectory()+ fd.getFile();
圖標(biāo)圖標(biāo)=新的ImageIcon(文件名,“”);
lbl.setIcon(圖標(biāo));
System.out的。的println(fd.getDirectory()+ fd.getFile()); / /顯示圖片的路徑和名稱
}
});
m1.add(MI2);
mb.add(M1);
f.setMenuBar(MB);
f.add(LBL);
f。秀();
}
}
把這一段放在一個循環(huán)里,然后判斷是否繼續(xù)輸入的值,如果繼續(xù),那就繼續(xù)下一次循環(huán),如果停止,則跳出循環(huán)
計(jì)算次數(shù)放在小循環(huán)里,每輸入一次加1,在大循環(huán)里定義,每次大循環(huán)都會從0開始
while(true){
int count = 0;
int number = rand.nextInt(100);
System.out.print("Your guess?");
int guess = console.nextInt();
do{
if (guess number){
count++;
System.out.println("It's lower.");
System.out.print("Your guess?");
guess = console.nextInt();
i++;
}else if (guess number){
System.out.println("It's higher.");
System.out.print("Your guess?");
guess = console.nextInt();
i++;
}
}while(guess != number);
if(guess == number){
System.out.println("You got it right in " + i + " guesses!");
System.out.println("Do you want to play again?");
String line = console.nextLine();
if (line.startsWith("Y")||line.startsWith("y")) {
guess();
}else if (line.startsWith("N")||line.startsWith("n")) {
break;
}
}
}
Connection conn;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:taian", "hr", "hr"); //連接Oracle
conn.setAutoCommit(false);
Statement myStat = conn.createStatement();
String sqlTxt = "update BankAccount set account=account-" + this.amount.getText() + " where accId=" + this.payOut.getText();
System.out.println("第一步 執(zhí)行:" + sqlTxt);
//
try {
int affectedRow = myStat.executeUpdate(sqlTxt);
System.out.println("從匯出方扣減" + this.amount.getText() + "元,修改了" + affectedRow + "行數(shù)據(jù).");
sqlTxt = "update BankAccount set account=account+" + this.amount.getText() + " where accId=" + this.saveIn.getText();
System.out.println("第二步 執(zhí)行:" + sqlTxt);
affectedRow = myStat.executeUpdate(sqlTxt);
System.out.println("從匯入方增加" + this.amount.getText() + "元,修改了" + affectedRow + "行數(shù)據(jù).");
// 事務(wù)成功結(jié)束, 提交
conn.commit();
} catch (SQLException sqlEx) {
System.out.println
sqlEx.printStackTrace();
// 事務(wù)中斷,整體回滾到事務(wù)開始前狀態(tài)
conn.rollback();
}
myStat.close();
conn.close();
} catch (Exception ex) {
System.out.println("反正是出錯了.");
}
}//
我修改成可以運(yùn)行的程序了,但不知道是不是你想要代碼效果。
public class TestprintString
{
public static void printString(String[] args)
{
if(args != null)
{
int len = args.length;
for(int i = 0; i len;i++)
{
System.out.println(args[i]+",");
}
System.out.println();
}
}
public static void main(String args[]){
printString(new String[]{"abc", "def", "hij"});
}
}
首先我先說下jdk是不支持泛型的,但是可以用強(qiáng)制轉(zhuǎn)型的方式
1.去掉每個類的的東西,如改寫成List sockets=new ArrayList();報(bào)錯的地方用強(qiáng)制轉(zhuǎn)型的方式改寫,如(Socket) socket
2.ChatToMul這個類中for循環(huán)改寫為Iterator
for(Iterator it = sockets.iterator();it.hasNext();){
Socket socketto = (Socket) it.next();
PrintWriter pw=MyUtil.getPrintWriter(socket);
PrintWriter pwto=MyUtil.getPrintWriter(socketto);
pw.println(socket.getRemoteSocketAddress().toString()+"對"+
socketto.getRemoteSocketAddress().toString()+"說:"+message);
pw.flush();
pwto.println(socket.getRemoteSocketAddress().toString()+"對"+
socketto.getRemoteSocketAddress().toString()+"說:"+message);
pwto.flush();
}
這樣基本改寫成功。
如果需要源代碼話,就聯(lián)系我,我傳給你,
代碼改寫不易,望采納
文章題目:java線上代碼修改,Java修改
本文鏈接:http://chinadenli.net/article36/dsgcipg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、搜索引擎優(yōu)化、Google、用戶體驗(yàn)、網(wǎng)站建設(shè)、微信小程序
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)