A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

1052246234@qq.c

初级黑马

  • 黑马币:

  • 帖子:

  • 精华:

© 1052246234@qq.c 初级黑马   /  2018-6-20 14:23  /  469 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1.数据类型装换
  当数据类型不一样时,将会发生数据类型装换
  1.1自动类型转换(隐式)
   定义:将取值范围小的类型自动提升为取值范围大的类型
    byte-->short-->char-->int-->long-->float-->double
   特点:代码不需要进行特殊处理,自动完成
   规则:数据范围从小到大。
   注意:当 char byte short 之间做运算时,默认结果为 int 类型   
  例:  左边是long类型,右边默认的int类型,左右不一样
  一个=代表赋值,将右侧的int常量赋值给左侧的long变量进行存储
  int-->long,符合数据范围从小到大的要求,这一行代码发生了自动类型转换
   long num1 = 100;
   
   1.2强制类型转换(显式)
   定义:将取值范围打的类型强制转换成取值范围小的类型
   特点:代码需要进行特殊处理,不能自动完成
   格式:范围小的类型  范围小的变量名 = (范围小的类型) 原本范围打的数据;
  例:  左边是int类型,右边是long类型,左右不一样
  long-->int,不是从小到大,不能发生自动转换!
  格式:范围小的类型  范围小的变量名 = (范围小的类型) 原本范围打的数据
  int num = (int) 100L;
  
1.3注意事项:
              强制类型转换一般不推荐使用,因为有可能发生精度损失、数据溢出
           byte、short、char 三种类型在运算时,都会被首先提升成为int类型,然后再计算
           boolean类型不能发生数据类型转换
     byte f = 20+40;//这是强制类型转换,编译器给我们自动加上了
  
1.4ASCII码
  记录了数字跟字符的对照关系表(编码表);
     ASCII码:American Standard Code for Information Interchange,美国信息交换标准代码
  'A'  65;'a'  97;'0'  48;
  Unicode码表:万国码。也是数字和符号的对照关系,
  
  
  
2.运算符
  2.1算数运算符和四则运算
     运算符定义:进行特定操作的符号,例如:+
     表达式:用运算符连起来的式子叫做表达式,例如:20+2;
     四则运算:加:+;减:-;乘:*;除:/,取整
  首先计算得到表达式的结果,而后再打印输出结果
  取模(取余数):%,只对于整数的除法来说,取模运算符才会有余数的意义
  
  注意事项:一旦运算当中有不同类型的数据,那么结果将会是数据类型范围大的那种
  
2.1.1加号运算符常见的三种用法
       1.对于数值来说,就是加法
       2.对于char类型来说,在计算之前,char会被提升为int,然后再计算
       3.对于字符串(String)来说,加号代表字符串连接操作,
         任何数据类型跟字符串进行连接的时候,结果都会变成字符串
2.2自增自减运算符   
    自增运算符:++
    自减运算符:--
    基本含义:让一个变量涨一个数字1,或者让一个变量降一个数字1.
    使用格式:写在变量名之前,或写在变量名之后,例:++a,a++;
    使用方式:单独使用:不和其他任何操作混合,自己独立成为一个步骤
     混合使用:和其他操作混合,例:与赋值混合,或者与打印操作混合等
    使用区别:
     1.单独使用的时候, 前++和后++没有任何区别。也就是前++与后++,是完全一样的
     2.在混合的时候,有【重大区别】
        A.如果是【前++】,那么变量【立马+1 】,然后拿着结果进行使用,     【先加后用】
     B.如果是【后++】,那么首先先使用变量本来的数值,【然后变量+1 】 ,【先用后加】
     注意事项:只有变量才能使用自增自减运算符,常量不可发生改变,不可以使用。

2.2赋值运算符
    基本赋值运算符:就是一个等号"=",代表将右侧的数据赋值给左侧的变量
             例如:int a = 10;
    复合赋值运算符:
       += a += 1;相当于 a = a + 1;
    -= b -= 2;相当于 b = b - 2;   
    *= c *= 3;相当于 c = c * 3;
    /= d /= 4;相当于 d = d / 4;
    %= e %= 5;相当于 e = e % 5;
     注意事项:只有变量才能使用赋值运算符,常量不能赋值。
      复合赋值运算符其中隐含了一个强制类型转换。
      
2.3比较运算符  
    <: 小于
    >: 大于
    <=: 小于等于
    >=: 大于等于
    ==:  等于
    !=: 不等于
    注意事项:比较运算符的结果一定是一个boolean值,成立是true,不成立是false
              如果进行多次判断,不能连着写,比如我们数学中的【1 < 2 < 3 】 在java中这是错误的写法

2.4逻辑运算符
    逻辑与(并且):&&  全都是true,才是true,否则就是false
    逻辑或(或者):||  至少一个是true,就是true,全都是false,才是false
    逻辑非(取反):!   本来是true,变成false,本来是false,变成true
   
    与“&&”,或“||”,具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执行,从而节省一定的性能。
    注意事项: 逻辑运算符只能用于boolean值
      与、或需要左右各自有一个boolean值,但是取反只要有唯一的一个boolean值即可
      与、或两种运算符,有多个条件,可以连续写
   
  2.5三元运算符
     需要三个数据才可以进行操作的运算符
  
  格式:数据类型 变量名称 = 条件判断?表达式A:表达式B;
  
  流程:首先判断条件是否成立:
     如果成立为true,那么将表达式A的赋值交给左侧的变量;
     如果不成立为false,那么将表达式B的赋值交给左侧的变量;
     二者选其一
  注意事项:必须同时保证表达式A和表达式B都符合左侧数据类型的要求
      三元运算符的结果必须被使用

2.6方法入门
     定义:将一段【功能】抽取出来,放在{}里,形成一个【单独的功能】。
  好处:提高了代码的阅读性,使代码更简洁,
        即实现了代码的复用性,也解决了代码冗余的现象
  定义格式:
     修饰符 返回值类型 方法名(参数列表){
      代码...
      return ;
     }
     解释:修饰符,目前固定写法public static。
           返回值类型,目前固定写法void。
     方法名,为我们定义的方法起名,满足标识符的规范,用来条用方法
     参数列表,目前无参数
     return,方法结束。因为返回值类型是void,方法{}内的return可以不写。
         
  方法体:也就是大括号当中可以包含任意条语句;
  注意事项:  方法定义的先后顺序无所谓
     方法的定义不能产生嵌套包含关系
     方法定义好之后,不会执行的,如果要执行,一定要进行方法的【调用】;
     
  如何调用方法:
      格式:方法名称();
   
2.7Jshell
  JShell脚本工具是JDK9的特性
     简单的脚本工具,当我们编写的代码非常少的时候,而又不愿意编写类、main方法,
  也不愿意去编译和运行时,可是使用JShell工具。
     
     
     
      

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马