码迷,mamicode.com
首页 > 编程语言 > 详细

java注意的一些细节问题

时间:2016-07-03 21:24:15      阅读:106      评论:0      收藏:0      [点我收藏+]

标签:

1. 大括弧作用域问题

public static void main(String[] args) {
    {
        int x;
        {
            int x;//编译错误:Duplicate local variable x
        }
    }
}

2.boolean值的运算

public static void main(String[] args) {
    if(true && false) {}
    if(true & false) {}
    System.out.println(true & false);
    System.out.println(true ^ false);
    System.out.println(true | false);
}

false
true
true

 

3.continue label 和 break label

public static void main(String[] args) {
    label:
    for(int i=0; i<2; ++i){
        System.out.println("i=" + i);
        for(int j=0; j<3; ++j){
            if(j == 1){
                //continue;
                //break;
                //continue label;
                break label;
            }
            System.out.println("   j=" + j);
        }
    }
}

  这个例子中,continue label和break具有同样的作用。

public static void main(String[] args) {
    label:
    for(int k=0; k<2; ++k){
        System.out.println("k=" + k);
        for(int i=0; i<2; ++i){
            System.out.println("    i=" + i);
            for(int j=0; j<3; ++j){
                if(j == 1){
                    //break;
                    continue label;
                }
                System.out.println("        j=" + j);
            }
        }
    }
}

  这个例子就更加直观的看到 continue label实现不一样的效果!

4.基本类型和对应对象分别做参数的函数重载

class A{
    public void fun(int x){
        System.out.println("int 重载");
    }
    
    public void fun(Integer x){
        System.out.println("Integer 重载");
    }
}


public class Main{
    
    public static void main(String[] args) {
         A a = new A();
         int x = 1;
         Integer ix = 1;
         a.fun(x);
         a.fun(ix);
    }
}

int 重载
Integer 重载

 

java注意的一些细节问题

标签:

原文地址:http://www.cnblogs.com/hujunzheng/p/5638553.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!