程序如下:
public class Point extends Element{private double X_Point; //X坐标
private double Y_Point;  //Y坐标
private PointSYMBOL properity;//点的相关属性public Point(){
X_Point=0;
Y_Point=0;
properity=new PointSYMBOL();
}
public Point(double x,double y){
X_Point=x;
Y_Point=y;
}
public double getX_Point(){     //获取已有点的X坐标
return X_Point;
}
public double getY_point(){    //获取已有点的Y坐标
return Y_Point;
}
public void setX_point(double X_New_Point){
X_Point=X_New_Point;                //改动X坐标值
}
public void setY_Point(double Y_New_Point){  //改动Y坐标值
Y_Point=Y_New_Point;
}
public int getProperity_Shape(){   //获取性质特征
return properity.getSymbol_Shape();
}
public long getProperity_Color(){     //获取颜色特征
return properity.getSymbol_Color();
}
public int getProperity_Scale(){     //获取大小特征
return properity.getSymbol_Size();
}
public void setProperity_Shape(int shape){
properity.setSymbol_Shape(shape);
}
public void setProperity_Color(long color){
properity.setSymbol_Color(color);
}
public void setProperity_Size(int size){
properity.setSymbol_Size(size);
}
}
然后是主程序:
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;public class Map {
public static void main(String[] args)throws FileNotFoundException
{Point[] roadP=new Point[300];
Scanner in=new Scanner(new File("E:\\MapZhou\\Point.txt"));//文件输入
for(int i1=0;i1<6;i1++){
in.nextLine();
}                     //跳过前面的6行,文件头
String str1=in.nextLine();//看是否已经读到DATA
int i2=0;//设置循环变量
if(str1=="DATA"){
while(in.hasNext()){
in.next();
roadP[i2].setX_point(Double.parseDouble(in.next()));
roadP[i2].setY_Point(Double.parseDouble(in.next()));
i2++;
}
in.close();
}
for(int i3=0;i3!=i2;i3++){
System.out.println(roadP[i3].getX_Point()+","+roadP[i3].getY_point());
}}
}
需要读入一个TXT的文档,我设计了一个简单的只有Point类还有主程序的可以运行结果正确;但是这个工程里面还有其他的类,我现在只要点的数据,结果是什么也不显示~~~

解决方案 »

  1.   

    这字体。。看起来好累不是有专门的java代码块么楼主改下。。
      

  2.   

    那个问题已经解决,只是有个疑问,程序说我没有初始化Point对象数组,然后我在主程序加入一个循环,初始化!问题是在类里面多的默认构造函数不能提供对象数组的初始化?还要另外去初始化吗?
      

  3.   

    你指的是这里吧。
    Point[] roadP=new Point[300]; 
    你这里只是为数组分配了空间而已,所有的对象元素都是null。你可以这么想,如果new Point[300]已经帮你初始化好了所有的子元素,那么它需要用什么类型去帮你初始化呢,Point可以有很多子类,它到底应该选用哪个呢。new Point[300],其实只是为roadP分配300个引用类型的空间而已,并不包含Point实际的类型。你需要为这300个引用分别new 300个元素。