Java学习之容易忽视的小问题

ZDNet软件频道 时间:2004-03-03 作者:李宁 |  我要评论()
本文关键词:sbfpsj javatips
和学习其它的语言一样,学习Java同样要从数据类型开始,在这篇文章中我想着重的讲解一些关于Java语法中容易忽视的问题。
从这篇文章开始,我们将会深入到Java语言的学习中。和学习其它的语言一样,学习Java同样要从数据类型开始,因为它是任何程序的基础。然而这往往又是比较尴尬的环节,因为Java语言和其它语言有很多相似的地方。或许你已经有了Java开发的经验或许你也许已经掌握了像c++这样的面向对象的语言。所以,在这篇文章中我想着重的讲解一些关于Java语法中容易忽视的问题。


这个系列的前两篇文章
  • Java学习之Java的运行环境
  • Java学习之踏上旅途的第一步

  • Java中的变量

    在Java的语言中变量是严格的要求先声明后使用的原则的。像大多数语言一样Java同样有整型变量,浮点型变量等等。相信大家对这些的比较了解。

    1. 在Java中类型的完整性要求的十分严格,在这点上超过了C++语言。比较明显的表现在,在C++中你可以将一个浮点数赋值给一个整数,C++会自动地替你完成数据类型的转换。但是在Java中这样做是错误的,你能做的仅仅是在兼容数据类型之间进行转换。比如:short和int和long之间进行转换。但在转换的时候要注意保证从数值类型范围小的转换为大的类型。比如把一个int类型转换为long(在赋值的时候不可以转换)。

    2.在Java中默认的浮点数是double类型的,所以在进行浮点数变量赋值的时候,一定要注意。例如:

    。。。

    float a; //定义了一个单精度浮点类型变量a。

    a=1.0;//将一个浮点数1.0赋值给a。

    。。。

    这在java 中是不可以的。你需要这样写。

    。。。

    float a;

    a=1.0f//另1.0为单精度再赋值给a。

    。。。

    3. Java中的布尔值只能是true或者false。不像c语言那样可以用0表示false用其它的数表示true。

    Java中的操作符

    让我们来看看在Java中比较有特点的操作符。

    1. 就是’ ~ ’ 这个符号。它代表的意思是反转数字的所有位。比如一个最大的正short经过反转就会变成最小的负数。

    2.就是>>,<<,这2个操作符。它们代表的意思是将符号左边的数移动右边或者左移符号右边那么多2进制位。例如:8>>1结果应该是4。

    3.就是&&和||这两个操作符。相信大家对它们都不会陌生。一个是与预算一个是或运算。这两个操作符有一个共同的特性就是当其左边的表达式已经足够判断整个表达式的时候,就不会在进行右边的判断。利用这个特性我们可以避免很多的错误。比如说求一个数的倒数,但是如果这个数为零的时候,我们就可以通过&&的方法避免求倒数是发生溢出错误。

    4.在Java中同样有三元运算符r=a?c :d.它的意思是如果a的值为真,那么r=c, 否则 r=d。

    5.  就是*和 / 号。您也许会很奇怪这不就是乘和除吗?不错,但是我在这里要告诉你一个容易忽视的地方。那就是当你想在两个数之间做乘或者除的时候如果要想使结果的精度保持不变。一定要在变量赋值的时候采用相同的精度。例如:

    。。。

    double a=4,b=5;

    。。。

    只有这样定义,用a/b才会得到0.8。但是如果在赋值的时候采用的是int a=4,b=5;那结果将会是什么呢?是的,是0。我想这也许是你不想看到的。

    在这篇文章中,我们讲了Java语言中容易出错的一些环节。而没有提Java语法中共性的东西。不过会在以后的Java学习小记这个系列的文章中详细的讲解。在下一篇文章中我将走进Java面向对象的特性。



    责任编辑:李宁

    欢迎评论投稿
    用户评论
    - 发表评论 -
    匿名
    注册用户

    百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
    中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
    京公网安备:1101082134