在java中如何实现结构体的功能啊?

mystery_boy 2003-09-29 05:36:25
C++中有struct,java中用什么来代替它啊?有点急,谢谢
...全文
14691 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
mystery_boy 2003-10-13
  • 打赏
  • 举报
回复
还有, jianlin(妞妞) 教训的是,确实没认真理解概念,惭愧啊
mystery_boy 2003-10-13
  • 打赏
  • 举报
回复
国庆回去了,没来看帖,结贴啰,其实问题我已经解决了,和regnay(border徐) 兄说的方法一膜一样,早点来看就好了,多谢上面各位了。
homerzhou 2003-10-01
  • 打赏
  • 举报
回复
《Effectice Java》里面说,尽量用class,而不要考虑struct,当你需要一个struct的时候,你就建立一个field是public的类好了。
jianlin 2003-09-30
  • 打赏
  • 举报
回复
p=new inte[length],这样做是不对的。建议你好好看看面向对象的概念。
honkyjiang 2003-09-30
  • 打赏
  • 举报
回复
public test {
class inte{
int p;
int q;
}
inte[] p ;
length = 6;
p = new inte[length];
for (int i=0;i<length;i++) {
p[i].p=12345;//出错,抛出NullPointerException异常
}
}

test 前面要加class关键字啊 ! 还有p[i] = new inte();才是初始化 要不然不能用p[i]的!
new_zero 2003-09-30
  • 打赏
  • 举报
回复
class
regnay 2003-09-29
  • 打赏
  • 举报
回复
inte[length]里的每个成员在使用之前必须初始化。

package untitled4;

/**
* <p>Title: </p>
* <p>Description: </p>
* <p>Copyright: Copyright (c) 2003</p>
* <p>Company: </p>
* @author not attributable
* @version 1.0
*/

public class Untitled1 {
public Untitled1() {
}
public static void main(String[] args) {
Untitled1 untitled11 = new Untitled1();

int length = 6;
class inte{
int p;
int q;
}
inte[] p ;
p = new inte[length];
for (int i=0;i<length;i++) {
p[i] = new inte();//初期化
p[i].p=12345;
System.out.print(p[i].p) ;
}
}

}
其上程序编译通过
因为p是一个对象数组,不是一个基本数据类型的数组,对象使用之前必须初始化,分配内存。
tomcatjava 2003-09-29
  • 打赏
  • 举报
回复
得有构造函数了!
你加上构造函数试试!
mystery_boy 2003-09-29
  • 打赏
  • 举报
回复
up
mystery_boy 2003-09-29
  • 打赏
  • 举报
回复
我就是这么做的,可是怎么都实例化不了
public test {
class inte{
int p;
int q;
}
inte[] p ;
length = 6;
p = new inte[length];
for (int i=0;i<length;i++) {
p[i].p=12345;//出错,抛出NullPointerException异常
}
}

请问是不是不能这么做啊,该怎么做?
kindlemoney 2003-09-29
  • 打赏
  • 举报
回复
就定义个class,放几个成员变量就行了

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧