我目前有一個叫做cube的類(它代表一個2x2x2魔方)。在這個類中,我有下面的代碼創建了一個小方塊數組(構成魔方的多維數據集),然後初始化它們。向上()方法用來順時針旋轉90度的立方體的頂部:一個對象中的方法影響另一個對象JAVA
public class cube {
private static cubie[] cornerCube = new cubie[8];
public void initialise(){
for(int i=0;i<=7;i++){
cornerCube[i] = new cubie();
cornerCube[i].setPos(i);
cornerCube[i].setOrient(0);
}
}
public void up(){
for(int i=0;i<=7;i++){
if(cornerCube[i].getPos()<=3){
cornerCube[i].setPos((cornerCube[i].getPos()+3)%4);
}
}
}
}
我存儲2條關於每個cubie信息:取向和位置。下面是該cubie類的代碼:
public static void main(String[] args) {
cube cube1 = new cube();
cube cube2 = new cube();
cube1.initialise();
cube2.initialise();
cube1.up();
cube1.print();
System.out.println("...");
cube2.print();
}
我不包括:
public class cubie {
private int orientation;
private int position;
public void setOrient(int orient){
orientation = orient;
}
public void setPos(int pos){
position = pos;
}
public int getOrient(){
return orientation;
}
public int getPos(){
return position;
}
}
當我嘗試在我的程序的主要部分,執行下面的一段代碼出現問題打印方法,因爲它很長,我已經徹底調試過它,但它所做的是打印出當前立方體的狀態,給出每個立方體的位置和方向。
你所期望的是2種不同的狀態,其中一種狀態是頂部順時針旋轉,另一種狀態是立方體的初始狀態。我實際得到的是兩個相同的立方體BOTH狀態,其頂部順時針旋轉。
對不起,如果有人能夠解決這個問題,我將非常感激。
-T
用大寫字母開始你的課程名稱。這只是公約而不是必需品。 – AKS
你可以添加你期望的輸出和實際輸出是什麼? –