|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
你通过从书的数量和开发周期及运行速度来证明:net和ruby要比java简单。变量|转换????我们晓得,Java的数据范例分为三年夜类,即布尔型、字符型和数值型,而个中数值型又分为整型和浮点型;相对数据范例,Java的变量范例为布尔型boolean;字符型char;整型byte、short、int、long;浮点型float、double。个中四种整型变量和两种浮点型变量分离对应于分歧的精度和局限。别的,我们还常常用到两品种变量,即String和Date。关于这些变量范例之间的互相转换在我们编程中常常要用到,在我们明天的这篇文章中,我们未来看看怎样完成这些转换。
????1、整型、实型、字符型变量中的互相转换
????在Java中整型、实型、字符型被视为统一类数据,这些范例由初级到初级分离为(byte,short,char)――int――long――float――double,初级变量能够间接转换为初级变量,比方,上面的语句能够在Java中间接经由过程:
????byteb;
????inti=b;
????而将初级变量转换为初级变量时,情形会庞大一些,你可使用强迫范例转换。即你必需接纳上面这类语句格局:
????inti;
????byteb=(byte)i;
????能够设想,这类转换一定大概会招致溢出或精度的下落,因而我们其实不保举利用这类转换。
????2、Java的包装类
????在我们会商别的变量范例之间的互相转换时,我们必要懂得一下Java的包装类,所谓包装类,就是能够间接将复杂范例的变量暗示为一个类,在实行变量范例的互相转换时,我们会大批利用这些包装类。Java共有六个包装类,分离是Boolean、Character、Integer、Long、Float和Double,从字面上我们就能够看出它们分离对应于boolean、char、int、long、float和double。而String和Date自己就是类。以是也就不存在甚么包装类的观点了。
????3、复杂范例变量和包装类之间的互相转换
????复杂范例的变量转换为响应的包装类,能够使用包装类的机关函数。即:
????Boolean(booleanvalue)、Character(charvalue)、Integer(intvalue)、Long(longvalue)、Float(floatvalue)、Double(doublevalue)
????而在各个包装类中,总无形为××Value()的办法,来失掉其对应的复杂范例数据。使用这类办法,也能够完成分歧数值型变量间的转换,比方,关于一个双精度实型类,intValue()能够失掉其对应的整型变量,而doubleValue()能够失掉其对应的双精度实型变量。
????4、String类和别的数据范例的互相转换
????关于下面的这些包装类,除Character之外,都有能够间接利用字符串参数的机关函数,这也就使得我们将String类转换为这些数据范例变得相称之复杂,即:
????Boolean(Strings)、Integer(Strings)、Long(Strings)、Float(Strings)、Double(Strings)
????而将String类转换为Date类也能够利用如许的机关函数:Date(Strings)
????如今我们还剩下一个字符型变量,现实上String类能够了解为一个char型数组,因而我们能够在String类中找到如许的办法来完成这类转换:charAt(intindex)能够失掉String类中某一名置上的字符,toCharArray()更能够将全部String类转换成一个char的数组。
????关于一切的包装类都存在一个名为toString()的办法能够将其转换成对应的String类,而关于整型类和长整型类,还可使用toBinaryString(inti)、toHexString(inti)、toOctalString(inti)分离以二进制、十六进制和八进制的情势举行到String类的转换。
????5、将字符型间接做为数值转换为别的数据范例
????将字符型变量转换为数值型变量实践上有两种对应干系,在我们在第一部分所说的那种转换中,实践上是将其转换成对应的ASCII码,可是我们偶然还必要另外一种转换干系,比方,‘1’就是指的数值1,而不是其ASCII码,关于这类转换,我们可使用Character的getNumericValue(charch)办法。
????6、Date类与别的数据范例的互相转换
????整型和Date类之间其实不存在间接的对应干系,只是你可使用int型为分离暗示年、月、日、时、分、秒,如许就在二者之间创建了一个对应干系,在作这类转换时,你可使用Date类机关函数的三种情势:
????Date(intyear,intmonth,intdate):以int型暗示年、月、日
????Date(intyear,intmonth,intdate,inthrs,intmin):以int型暗示年、月、日、时、分
????Date(intyear,intmonth,intdate,inthrs,intmin,intsec):以int型暗示年、月、日、时、分、秒
????在长整型和Date类之间有一个很风趣的对应干系,就是将一个工夫暗示为间隔格林尼治本定时间1970年1月1日0时0分0秒的毫秒数。关于这类对应干系,Date类也有其响应的机关函数:Date(longdate)
????猎取Date类中的年、月、日、时、分、秒和礼拜你可使用Date类的getYear()、getMonth()、getDate()、getHours()、getMinutes()、getSeconds()、getDay()办法,你也能够将其了解为将Date类转换成int。
????而Date类的getTime()办法能够失掉我们后面所说的一个工夫对应的长整型数,与包装类一样,Date类也有一个toString()办法能够将其转换为String类。
????在Java的数据范例转换中,你另有一些别的办法可用,可是,下面所先容的这些办法关于你的实践编程已充足了,不是吗?
大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。 |
|