JavaSE教程-02Java基本语法-练习

  1. 请说出下面的运算结果及解释为什么
    System.out.println(1+1+“1”);//?
    System.out.println(“1”+1+1);//?
  2. 请实现两个整数变量的交换
    int a = 1;
    int b = 2;
    //经过交换之后,这里需要大家实现交换的代码 System.out.println(a);//2
    System.out.println(b);//1
  3. 求三个整数中的最大数

  4. 某查询结果的记录数为66条,每页显示10条,请计算总页数有几页?

  5. 设计一个实验证明&和&&的区别

第一题答案

public class Zy03{
    public static void main(String[] args){
        System.out.println(1+1+"1");//21
        /*
           进行数据运算时是从前往后进行,前两个数为数字,所以直接相加得到2;
           遇到第三个数据时,因为该数据时字符,所以会先把前面的计算的结果转换为字符后,再相加得到字符串21
        */
        System.out.println("1"+1+1);//111
        /*
           因为开始运算时,前一个数据为字符,后一个为数字,所以会先把数字转为字符,在相加,后面一个数据处理同理
        */
    }
}

第二题答案

public class Zy04{
    public static void main(String[] args){
        int a=1;
        int b=2;
        int c=a;
        /*要实现a和b进行交换,必须先将a存储在一个新的变量中,
        因为在第一实现交换后,a的值发生了变化,因此不能直接使用a来实现b的赋值*/

        a=b;
        b=c;
        System.out.println("a="+a);//2
        System.out.println("b="+b);//1

    }
}

第三题答案

public class Zy05{
    public static void main(String[] args){
        //求三个数中的最大数
        int a=1;
        int b=2;
        int c=3;
        /*int max1=(a>b)?a:b;
        int max2=(max1>c)?max1:c;
        System.out.println(max2);*/

        int max=(((a>b)?a:b)>c)?((a>b)?a:b):c;
        System.out.println(max);

    }
}

第四题答案

public class Zy06{
    public static void main(String[] args){
        //某查询结果的记录数为66条,每页显示10条,请计算总页数有几页?
        int a=66;
        //int a=80;
        int b=10;
        int c=a%b;

        int page=(c==0)?(a/b):(a/b+1);
        System.out.println(page);
    }

}

第五题答案

public class Zy07{
    public static void main(String[] args){
        //设计一个实验证明&和&&的区别
        /*
            结论:
            短路与&&,只要前面可以确定结果是false,那么后面就不管了
            逻辑与&,就算前面可以确定结果是false,它也要去计算后面的值

            短路或||,只要前面可以确定结果是true,那么后面就不管了
            逻辑或|,就算前面可以确定结果是true,它也要去计算后面的值

            设计个实验证明这个结论
        */

        boolean c1 = 1>2&&2>(3/0);
        //boolean c1 = 1>2&2>(3/0);
        /*使用&时会报错,说3的除数不能为0,说明运算了后面的部分
            而使用&&时不会报错
        */
        System.out.println(c1);//false

    }
}
posted @ 2017-03-29 14:12  TCB_Java  阅读(146)  评论(0编辑  收藏  举报