English Deutsch Français Italiano Español Português 繁體中文 Bahasa Indonesia Tiếng Việt ภาษาไทย
所有分類

這是 C語言的結構陣列(舉例):
struct abc{
char name[4];
int number;
}data[10];

所以我的問題是:
(1)要如何把上方的 C語言結構陣列,用 JAVA語言來表示?
(亦即改寫成 JAVA語言,而且不設初值)
(2)上方的陣列是 data[10],如何以 JAVA語言設定 10個初值?
(例如:{\"a\",0},{\"b\",1},{\"c\",2},{\"d\",3}......)

<<以上兩題共 20點>>
(如有一人以上回答,以詳細 \"解答\" 者為贈點的優先選擇~)

2006-03-30 01:29:54 · 2 個解答 · 發問者 Big_John-tw 7 in 電腦與網際網路 程式設計

2 個解答

初步的想法如下:
比較簡單的設定方式是宣告跟初始化一起
不然就要一個一個設定或是用迴圈設定.
注意下面的程式實際上為data配置了兩次記憶體.
實際使用用第二個就行, 也可以使用第一種方式
然後在其他地方設定值.

public class Struct {

/** Code documentation here */
public static void main(String[] args) {
abc[] data=new abc[10]; // 第一題的宣告方式
data = new abc[] {new abc("a",1), new abc("b",2), new abc("c",3), new abc("d",4), new abc("e",5),
new abc("f",6), new abc("g",7), new abc("h",8), new abc("i",9), new abc("j",10) };
// 第二題的初始方式
}
}

class abc {
String name;
int number;
abc(String name, int number) {
this.name = name;
this.number=number;
}
}

我用String代替char[4]; 因為使用比較方便.

2006-03-30 11:39:40 · answer #1 · answered by 瑪琪朵 5 · 0 0

這是第二題的答案
除了這樣寫以外
也可以用迴圈來寫
你...慢慢練習看看吧..
public class Test
{

public static void main(String args[])
{
char aa[]= new char[10];
aa[0]=10;
aa[1]=11;
aa[2]=12;
aa[3]=13;
aa[5]=14;
aa[6]=15;
aa[7]=16;
aa[8]=17;
aa[9]=18;
System.out.println(aa[0]+0);

}
}

2006-03-30 11:09:56 補充:
不設初值 就是這樣..public class Test{ public static void main(String args[]) { char aa[]= new char[10]; }}

2006-03-30 06:04:26 · answer #2 · answered by 茄子熊 2 · 0 0

fedest.com, questions and answers