前言:
常见的类型转换方法
1.所有类型
虚线代表需要强制变换,实线代表自动转换即可
2.Double 和 double
2.1 double 和Double的区别
double是基本数据类型,Double是原始数据类型
double没有方法,Double有自己的属性和方法
double只创建引用,Double创建对象
集合类不能存放double,只能存放Double
double存放在栈中,Double存放在堆中
栈的存取速度要高于堆,另外栈中的数据可以共享
如:
double a = 0;
double b = 0;
不会创建对象,只会建立两个引用,同时指向变量“0”(栈数据共享)
而
Double a = new Double(0);
Double b = new Double(0);
会创建两个对象,即使对象所代表的值一样(堆数据不共享)
所以从效率来讲用double合适,而Double提供的属性和方法会使操作各种操作更加方便和灵活
2.2.转换问题
可以直接互相转换
double a=1.2;
Double b=new Double(3.0);
a=b;
b=a;
(从double[]转换到Double [] )目前并没有什么比较好的接口,直接就是手动解决
Double ss[]=new Double[x.length];
for(int i=0;i<x.length;i++)
{
ss[i]=x[i];
}
double pp=StandardDiviation(ss);
System.out.println(x);
Int和Integer的转换问题
int a=1;
Integer b=new Integer(2;);
a=b;
b=a;
String 与char
https://blog.csdn.net/Yaokai_AssultMaster/article/details/52082763
在Java中将String转换为char是非常简单的。
- 使用String.charAt(index)(返回值为char)可以得到String中某一指定位置的char。
- 使用String.toCharArray()(返回值为char[])可以得到将包含整个String的char数组。这样我们就能够使用从0开始的位置索引来访问string中的任意位置的元素。
将char转换为String大致有6种方法。总结如下:
1. String s = String.valueOf('c'); //效率最高的方法
2. String s = String.valueOf(new char[]{'c'}); //将一个char数组转换成String
3. String s = Character.toString('c');
// Character.toString(char)方法实际上直接返回String.valueOf(char)
4. String s = new Character('c').toString();
5. String s = "" + 'c';
// 虽然这个方法很简单,但这是效率最低的方法
// Java中的String Object的值实际上是不可变的,是一个final的变量。
// 所以我们每次对String做出任何改变,都是初始化了一个全新的String Object并将原来的变量指向了这个新String。
// 而Java对使用+运算符处理String相加进行了方法重载。
// 字符串直接相加连接实际上调用了如下方法:
// new StringBuilder().append("").append('c').toString();
6. String s = new String(new char[]{'c'});