zoukankan      html  css  js  c++  java
  • 第二天学习Java基础

    Java基础语法

    数据类型

    //强类型语言:要求变量的使用严格要求规范,所有变量必须先定义后使用
    //整数
    int num1 = 10;
    byte num2 = 20;
    short num3 = 30;
    long num4 = 40L;  //long在数值后加L表示为long类型
    //小数
    float num5 = 50.1F; //float类型在数值后加F来区别和double区别
    double num6 = 50.1;
    //字符(不是字符串)
    char name = 'a';  //字符类型char只能声明一个字符,可以实字母或汉字,但只能一个
    //布尔
    boolean flag = true;  //布尔值只有true和flase
    
    //类型转换,从小到大
    byte short char int long float double
    

    数据类型面试题

    • 关于进制:二进制0b开头、八进制0开头,十六进制0x开头。
    • 关于float:float是舍入误差的,最好完全不要使用float进行比较。金钱定义使用java工具类BigDecimal。
    • 关于转换:不能对布尔值进行转换,不能把对象类型转换为不相干的类型,高容量转换为低容量时需强制转换,可能存在内存溢出或精度(去掉小数点后的数)问题。
    • 数值类型可以过长的话可以每四位用_分隔(jdk7新特性)。
    • 数值运算过大的话会内存溢出,结果强转也没用,须在运算之前强转。

    引用类型

    //类
    //接口
    //数组
    

    变量

    • 类变量:在class中static修饰的变量,方法中可以直接使用。
    • 实例变量:在class中没有static修饰的变量,方法调用需要new。
    • 局部变量:方法中的变量,只能在本方法内使用。

    常量

    • 使用final修饰,常量名一般使用大写字母命名。

    命名规范

    • 变量:首字母小写的驼峰原则
    • 常量:大写字母加_
    • 类名:大写字母的驼峰原则
    • 方法名:小写字母的驼峰原则

    Java运算符

    • 算数运算符:+、-、*、/(注意变量类型)、%、++、--

    • 赋值运算符:=

    • 关系运算符:>、<、>=、<=、==、!=、instanceof

    • 逻辑运算符:&&(与)、||(或)、!(非)

      //&&运算如果第一个就为flase,后面的判断全部不执行(短路运算)
      
    • 位运算符:&、|、^、~、>>、<<、>>>(计算机操作相关)

      /*
      A = 000110
      B = 100010
      A&B = 000010  //全部为1才是1
      A|B = 100110  //有1就是1
      A^B = 011011  //同样的就是1
      ~B = 011101   //取反
      */
      //重点左移<<  *2、右移>>  /2
      /*
      0000 0000   0
      0000 0001   1
      0000 0010   2
      0000 0011   3
      0000 0100   4
      0000 1000   8
      0001 0000   16
      */
      //左移右移就是让二进制1的位置左右移动
      面试题:让计算机最快的速度算出2*8
      答 案:2<<3        (2右移三位=16)
      
    • 条件运算符:? :

    • 扩展赋值运算符:+=、-=、*=、/=

      int a = 10;
      int b = 20;
      a += b;   //a+=b;   ==   a = a+b;
      System.out.println(a += b);
      //输出30
      
    • 幂运算

      //java中不提供2^3这种写法,需用到Math类
      double pow = Math.pow(2,3);
      pow中存储2^3的结果8.0
      

    运算符注意点

    • 算数运算中,算数有一个long,其结果也为long类型;有一个int,结果也为int;short+byte结果也为int。

    • a%b == a除b=?.....c 的c为a%b的结果。

    • 自增/自减

      int a = 3;
      int b = a++;  //先将a(值为3)赋值给b,再执行a=a+1;
      System.out.println(b);   //输出3
      System.out.println(a);   //输出4
      int c = ++a;  //先执行a=a+1;再将运算后的结果赋值给c
      System.out.println(c);   //输出5
      

    Java DOC文档

    /**
    *@author    作者名
    *@verson    版本号
    *@since     最早使用的jdk版本
    *@param     参数名
    *@return    返回值
    *@throws    抛出的异常
    */
    
  • 相关阅读:
    训练赛(28)—— 计蒜客 45724 Jumping Frog
    训练赛(28)—— 计蒜客 45725 Fujiyama Thursday
    centos上libreoffice+unoconv安装步骤,实现word转pdf
    PhantomJS linux系统下安装步骤及使用方法(网页截屏功能)
    knockout应用开发指南(完整版)
    git 创建版本库
    保留json字符串中文的函数,代替json_encode
    微信公众平台开发接口PHP SDK完整版(转载)
    find_in_set()
    NuSOAP与PHPRPC比较(转)
  • 原文地址:https://www.cnblogs.com/sxblogs/p/12865121.html
Copyright © 2011-2022 走看看