zoukankan      html  css  js  c++  java
  • 习题两则(自增操作符和数据类型相关知识点)

    自增、自减操作符

    • 自增自减操作符是可以直接改变变量值的操作符
    • 前加加、前减减(先赋值后使用
    • 后加加、后加加(先使用后赋值
    • 实际上是一个+1操作和一个赋值操作的缩写形式(a++;  a=a+1;  a+=1;
    public class IncreaseDecrease {
        public static void main(String[] args) {
            int a = 1;
            System.out.println("a++=" + a++); // 先使用再+1 此时:a的值为1
            System.out.println("a=" + a); // a的值为2
    
            a=1;
            System.out.println("++a=" + ++a); // 先+1再使用 此时:a的值为2
            System.out.println("a=" + a); // a的值为2
    
            int b = 10;
            System.out.println("b--=" + b--); // 此时:b的值为10
            System.out.println("b=" + b); // b的值为9
        }
    }

    习题一、打印26个英文字母

    知识点

    • 自动类型转换:char 到 int
    • 强制类型转换:int 到 char
    • 字符和数字的对应关系,字符集和编码
    • 字符串的加法:任何数据和字符串都可以相加,将这个数据的字符串和另一个字符串拼接起来
    • 自增操作符
    public class Print26Char {
        public static void main(String[] args) {
            char ch = 'A';
            int num = ch; // char -> int 自动类型转换
            System.out.println( num + "	" + ((char)(num++)) ); // int -> char 强制类型转换(可能会丢失精度)
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
            System.out.println( num + "	" + ((char)(num++)) );
        }
    }

    难点解析:强制类型转换公式:(目标转换类型)(转换前的源数据)

    习题二、找到可以被整除的数

    知识点

    • 取模运算:整数的取模运算(%)
    • 布尔运算:== 操作符
    • 自增运算
    public class FindDiv {
        public static void main(String[] args) {
            int dividend = 35; // 被除数
            int divisor = 9; // 除数
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor== 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
            System.out.println(dividend+"可以被"+divisor+"整除吗?" + ((dividend++) % divisor == 0));
        }
    }

    难点解析:利用自增运算符的特性,这里用到的是后加加,这样就实现了先使用原值再赋值得到新值的目的。

  • 相关阅读:
    JSTL日期格式化用法
    JSTL详解1
    Mybatis插入后返回主键
    JSTL详解2
    jsp与jsp之间传参数如何获取
    [转] J2EE面试题集锦(附答案)
    [转] 修炼一名程序员的职业水准(林庆忠原创)
    [转] 应聘Java笔试时可能出现问题及其答案(第三部分)
    [转] 与大家一起分享JAVA源代码查询网站
    [转] 应聘Java笔试时可能出现问题及其答案(第四部分)
  • 原文地址:https://www.cnblogs.com/buildnewhomeland/p/12142307.html
Copyright © 2011-2022 走看看