『壹』 java里面有没有二维向量的类
弄个二维数组就行了啊,java本身是没有提供这样的类的,你可以自己定义,也不难的。
『贰』 如何定义JAVA中double类型的数组
如果您在一定区间抄内初始化袭别的数,可以使用Fill方法。
第一步:声明数组。
double[] arr=new double[50];
第二步:填充。(比如都初始化成3.14)
Arrays.Fill(arr,3.14)。
『叁』 JAVA中如何储存不知道大小的二维数组
首先你要了解什么是数组,数组在内存中是一段连续的空间,这样的优点就是元素的访问速度快,要长度可变的话你可以用链表,java 自带有一个双向链表 LinkedList ,也有一个ArrayList 这个就不能算是链表了.当然你可以自己写一个结构来实现,这个也不难,有点像链式哈希表,基本上用链表改一下就成了。
不过话说回来,我用java这么久还真的没有数组在用的时候不能确定它长度的, 正如楼上所说“int a=0,b=0;
Object[][] c=new Object[a][b];”大部份我们都是这样来声明数组的,数组在我们在声明的时候基本上要多大我们是知道的。
『肆』 如何把这种表转化成java中的二维向量
用二维数组存放不太好,年月跨年了,是个区间值,不能统一用double或String,建议用集合,内例如:
//1
Map<String,Map<String,Double>>map1=newHashMap<String,Map<String,Double>>();
Map<String,Double>map=newHashMap<String,Double>();
map.put("1958-03",16.5);//依次填容入12个月
map1.put("1958~1959",map);
//2
Map<String,Double[]>map2=newHashMap<String,Double[]>();
Double[]cost=newDouble[12];
cost[0]=16.5;//依次填入12个月
map2.put("1958~1959",cost);
『伍』 java向量
publicclassTest7{
//cos夹角=a向量点乘b向量/(a向量的模*b向量的模),这里没有考版虑经度问题。
publicstaticvoidmain(String[]args){
权intx1=3,y1=4,z1=5;
intx2=6,y2=8,z2=10;
doublediancheng=x1*x2+y1*y2+z1*z2;
doubleaa=Math.sqrt(Math.pow(x1,2)+Math.pow(y1,2)+Math.pow(z1,2));
doublebb=Math.sqrt(Math.pow(x2,2)+Math.pow(y2,2)+Math.pow(z2,2));
doublecos=Math.round(diancheng/(aa*bb));
System.out.println("夹角为:"+Math.acos(cos));
}
}