您的位置:首页 > 编程语言 > Java开发

java基础-各种类型及转换(int,string,char,short,date)

2014-11-07 13:20 567 查看
java数据类型和c/c++相似,但java是面向对象编程,和其他语言有一定的区别,下面请看几个例子。

写给初学者看的,我的第一篇博客。。高手勿喷。。。有错请指出~谢谢!

如:

(一)整型int:

int a=0;//整型变量a
Integer b=0;//Integer是为int封装好的数据对象此时b是一个对象
而Integer究竟有什么用呢?

1)、Integer主要用于数据类型的转化,如:

String str=“1234”;
int i1=Integer.valueOf(str);//通过valueOf方法转化为double


int i2=Integer.parseInt(str);//把String转化为int型,以此类推Double和double,Float和float的区别其实是一样的<pre name="code" class="java">//相反,int转String看下面这行
<span style="font-family: Arial, Helvetica, sans-serif;">String s = Integer.toString(i1);</span>
<span style="font-family: Arial, Helvetica, sans-serif;">doouble d1=Double.parseDouble(str);//把String转为double</span>
<span style="font-family: Arial, Helvetica, sans-serif;">double d2=Double.valueOf(str);//通过valueOf方法转化为double</span>




如果要定义一个整型变量,只需用int就行了,无需用Integer,

总结:都是通过封装类来实现转化的

2)、用于泛型,所谓泛型就是c/c++所说的类模版。如:
List<Integer> nums;//这里的<>里面只能填对象,而int是基本数据类型(填写会报错),并不是一个对象,所以只能填Integer

(二)String和stringBuufer类型:

1)、String为不可变对象,一旦被创建,就不能修改它的值,但是如果对对象行重新赋值,则会重新创建一个对象(ps:String 是final类,即不能被继承)

String str="Hello and hello";//创建对象str
str=new String(“hello”); //此时会重新创建一个内存给的str(新实例str),此时str="hello"


2)、StringBuffer:是一个可变对象,当对他进行修改的时候不会像String那样重新建立对象

它只能通过构造函数来建立,

StringBuffer StringB = new StringBuffer();

StringB :不能通过付值符号对他进行付值.

StringB = "hello dear!";//错误!报这个异常(Type mismatch: cannot convert from
String to StringBuffer)

对象被建立以后,在内存中就会分配内存空间,并初始保存一个null.如要向StringBuffer

中赋值,应通过它的append()方法.

sb.append("hello again");

字符串连接操作中StringBuffer的效率要比String高:

String str_add = new String("you are ");
str_add += "nicky";//此时str_add="you are nicky"
的处理步骤实际上是通过建立一个StringBuffer,让侯调用append(),最后再将StringBuffer toSting();

(三)short类型:short(短整型) 大小:16位 范围-32768 - 32768

short s1 = 1; s1 = s1 + 1;//会报错,为什么?因为s1是short类型,而1是int型,s1+1运算结果是向高精度的类型转换(这里转为int 型),所以需要强制转换类型,否则报错;
short s1 = 1; s1 += 1;有没有错?
short s1 = 1; s1 += 1;可以正确编译,它会自动类型提升,+=运算符最后会自动进行强制转换 所以不会报错

(四)char类型与String类型:

//如何将char转String类型:
char onechar = 'a';
String str = String.valueOf(onechar );
//如何将 String 转换成 char ?

1) String string="123";

char[] ca=string.toCharArray();
System.out.println(ca);//结果输出 123

2) String s=String.valueOf(ca); //char[]转String类型

System.out.println(s); //结果输出 123

(五)Date时间格式:请见下面例子子,看完希望你有收获。

Date  nowdate=new Date();
System.out.println(nowdate);//输出   Fri Nov 07 17:02:20 CST 2014
SimpleDateFormat sdf=new SimpleDateFormat();
System.out.println( sdf.format(nowdate));//输出  14-11-7 下午5:01
sdf=new SimpleDateFormat("YYYY-MM-DD");
System.out.println( sdf.format(nowdate));//输出  2014-11-311(此时需要注意"日(day)"的d要小写,否则会输出这样的数据)
sdf=new SimpleDateFormat("YYYY-MM-dd");//输出  2014-11-07
System.out.println( sdf.format(nowdate));
sdf=new SimpleDateFormat("YYYY年MM月dd日HH:mm:ss");
System.out.println( sdf.format(nowdate));//输出2014年11月07日17:09:09(一定要主要大小写,大小写会影响输出结果的)


类型先讲这么多,以后会继续分享文章,感谢你的阅读!如有不足,请指出............


                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: