Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1798379
  • 博文数量: 438
  • 博客积分: 9799
  • 博客等级: 中将
  • 技术积分: 6092
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-25 17:25
文章分类

全部博文(438)

文章存档

2019年(1)

2013年(8)

2012年(429)

分类: Java

2012-03-25 21:38:50

相关下载:

JDK: 

Eclips: 

废话少说,仅讨论Java与C++的区别。

基本类型

Java中的所有对象均是Object的子类且内存都是在堆中分配的,但基本类型(boolean、char、byte、short、int、long、float、double)是在栈中分配的。

boolean:与C++的bool类似。不同的是C++中bool实际上是一个整型,但Java中写不出这样的代码“boolean b = !0”。

每个基本类型都有对应的一个包装器类型:Boolean、Character、Byte、Short、Integer、Long、Float、Double、Void。这些包装类提供更丰富的方法,比如Integer.ParseInt。


操作符

Java是不支持操作符重载的。

Java中没有sizeof操作符,因为Java中所有的数据类型在所有机器中的大小都是相同的。

"=="仅比较对象的引用,但比较基本类型时是进行值的比较。看下面代码:


  1. Integer x = new Integer(7);
  2. Integer y = new Integer(7);
  3. boolean b = x == y; // false

  4. int i = 7;
  5. int j = 7;
  6. b = i == j;

如果要自定义比较,就需要覆盖Object类中的equal方法。

 

控制执行流程

Foreach 语法:


  1. int a[] = {1, 2, 3, 4, 5};
  2. for (int x: a)
  3.     System.out.print(x);

break/continue label语法(适用于嵌套循环中):
  1. int x = 10;
  2. int y = 5;
  3. outer: // this is the label
  4. while (x-- > 0)
  5. {
  6.     while (y++ < 10)
  7.     {
  8.         if (x + y == 9)
  9.             break outer;
  10.     }
  11. }


阅读(1287) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~