美文网首页
Java关键字及运算符

Java关键字及运算符

作者: 学编程的小屁孩 | 来源:发表于2020-02-19 15:21 被阅读0次

    一、关键字

    1、定义

    1)关键字是电脑语言里事先设定的,有特别意义的标识符,有时又叫做保留字,还有特别意义的变量。

    1. Java的关键字对Java的编辑器有特殊的意义,他们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。

    2、Java关键字含义

    1)Java的语言规定关键字不能作为标识符。目前共有50个Java关键字。其中“const”和“goto”这两个 关键字在Java语言中没有具体的含义。Java语言把它们列为关键字,知识因为“const”和“goto”是其 他某些计算机语言的关键字。

    2)Java关键字的大致含义见下图

    关键字 含义
    abstract 表明类或者成员方法具有抽象属性
    assert 用来进行程序调试
    boolean 基本数据类型之一,布尔类型
    break 提前跳出一个块
    byte 基本数据类型之一,字节类型
    case 用在switch语句之中,表示其中的一个分支
    catch 用在异常处理中,用来捕捉异常
    char 基本数据类型之一,字符类型
    class
    const 保留关键字,没有具体含义
    continue 回到一个块的开始处
    default 默认,例如,用在switch语句中,表明一个默认的分支
    do 用在do-while循环结构中
    double 基本数据类型之一,双精度浮点数类型
    else 用在条件语句中,表明当条件不成立时的分支
    enum 枚举
    extends 表明一个类型是另一个类型的子类型,这里常见的类型有类和接口
    final 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变
    finally 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块
    float 基本数据类型之一,单精度浮点数类型
    for 一种循环结构的引导词
    goto 保留关键字,没有具体含义
    if 条件语句的引导词
    implements 表明一个类实现了给定的接口
    import 表明要访问指定的类或包
    instanceof 用来测试一个对象是否是指定类型的实例对象
    int 基本数据类型之一,整数类型
    interface 接口
    long 基本数据类型之一,长整数类型
    native 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的
    new 用来创建新实例对象
    package
    private 一种访问控制方式:私用模式
    protected 一种访问控制方式:保护模式
    public 一种访问控制方式:共用模式
    return 从成员方法中返回数据
    short 基本数据类型之一,短整数类型
    static 表明具有静态属性
    strictfp 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范
    super 表明当前对象的父类型的引用或者父类型的构造方法
    switch 分支语句结构的引导词
    synchronized 表明一段代码需要同步执行
    this 指向当前实例对象的引用
    throw 抛出一个异常
    throws 声明在当前定义的成员方法中所有需要抛出的异常
    transient 声明不用序列化的成员域
    try 尝试一个可能抛出异常的程序块
    void 声明当前成员方法没有返回值
    volatile 表明两个或者多个变量必须同步地发生变化
    while 用在循环结构中

    3)Java关键字按照相关性大致可以分为

    ①与数据类型相关:

    byte(8bit),boolean(8bit),short(16bit),char(16bit),int(32bit),long(64bit),float(32bit),double(64bit),class,interface,enum

    ②与流程控制相关的:

    do,while,for,if,else,switch,case,break,continue,default,return,try,catch,finally

    ③修饰符:

    public,default,protected,private,fianl,void,static,strictfp,abstract,volatile,native

    ④与动作相关的:

    package,import,throw,thorws,extends,implements,this,super,instaceof,new,synchronized

    ⑤其他:

    true,false,null,goto,const,transient


    二、数据类型:

    image
    boolean:布尔型,8位,表示逻辑值,值的内容为true或者false。默认false。
    

    整型Integer:

    byte:字节型,8位,是最小的整数类型,范围是-128~+127。默认0。 
    short:短整型,16位,范围是-32768~+32767。默认0 。 
    int:整型,32位,范围是-2147483648~+2147483647。默认0 。 
    long:长整型,64位,范围极大常用于科学计算领域。长整型数字最后有字母l或L。默认0L 。 
    char:字符型,16位,范围为\u0000~\uFFFF 。默认\u0000 。
    

    浮点型Floating-point:

    float:单精度浮点型,32位,范围±3.40282347E+38~±1.40239846E-45。
    可以精确到7位有效数字,第8位的数字是第9位四舍五入后得到的。默认0.0f 。
    double:双精度浮点型,64位,可以精确到16位有效数字,
    第17位数字是第18位四舍五入得到的。默认0.0d 。
    Java程序中小数默认为double型, 
    float f = 0.1;是不对的,应该是 float f = 0.1f; 或 float f = 0.1F; ,
    而double d = 0.1; 或 double d = 0.1d; 或 double d = 0.1D都对。
    

    不同数据类型之间的隐式转换时的强弱关系由弱到强为:

    byte < short = char < int < long < float < double
    

    显示转换的方法为:

    int a  = 100; char c = (int) a;
    

    简单的代码演示:

    import java.util.Scanner;
    
    public class Convert {
    
    public static void main(String[] args) { 
    // TODO Auto-generated method stub 
      Scanner sc = new                 
      Scanner(System.in); 
      byte b = 65, b1 = 0; 
      short s = 66, s1 = 0; 
      int i = 67, i1 = 0; 
      long l = 68L, l1 = 0; 
      int j = sc.nextInt(); 
      char[] c =new char[5]; 
      sc.close(); 
    
      c[0] = byteToChar(b); 
      c[1] = shortToChar(s); 
      c[2] = intToChar(i); 
      c[3] = longToChar(l); 
      c[4] = intToChar(j);
    
      System.out.println("c[4]="+c[4]); 
      System.out.println("\nb="+b); 
      System.out.println("s="+s); 
      System.out.println("i="+i); 
      System.out.println("l="+l); 
      System.out.println("c[0]="+c[0]); 
      System.out.println("c[1]="+c[1]); 
      System.out.println("c[2]="+c[2]); 
      System.out.println("c[3]="+c[3]); 
    
      b1 = charToByte(++c[0]); 
      s1 = charToShort(++c[1]); 
      i1 = charToInt(++c[2]);
      l1 = charToLong(++c[3]); 
    
      System.out.println("\nb1="+b1); 
      System.out.println("s1="+s1); 
      System.out.println("i1="+i1); 
      System.out.println("l1="+l1);
      }
    
      public static char shortToChar(short x){ 
        return (char)x;
      }
    
      public static char intToChar(int x){ 
        return (char)x;
      }
    
      public static char longToChar(long x){ 
        return (char)x;
      }
    
      public static char byteToChar(byte x){ 
        return (char)x;
      }
    
      public static short charToShort(char x){ 
        return (short)x;
      }
    
      public static int charToInt(char x){ 
        return (int)x;
      }
    
      public static long charToLong(char x){ 
        return (long)x;
      }
    
      public static byte charToByte(char x){ 
        return (byte)x;
      }
    }
    

    三、运算符

    image

    算数运算符####

    单目运算符:
    +(取正)、-(取负)、++、--

    二目运算符:
    +、-、*、/、%

    三目运算符:
    ?:

    表达式1 ? 表达式2 : 表达式3 
    //若表达式1的布尔值为true,则取表达式2的值,若为false则取表达式3的值
    

    关系运算符

    ==(等于)、!=(不等于)、>(大于)、<(小于)、>=(大于等于)、<=(小于等于)

    位运算符:

    &:按位与、|:按位或、~:按位非、^:异或(相同为0,不同为1)
    位运算的原理是把运算数转化为二进制数进行比较,如:

    5 & 10 的结果为0
    实际上是: 
         0101
    &    1010
      —————————— 
         0000
    

    逻辑运算符

    &&:逻辑与、||逻辑或、!逻辑非
    如:

    true && false 结果为false
    

    移位运算符

    >>:右位移、<<:左位移
    

    移位运算的本质其实是转化为二进制数后进行移位,所以:

    8>>2即为1000右移2位,变为0010,即4
    

    左移n位就是乘2n,右移n位就是除以2n。

    赋值运算符

    =   +=   -=   *=   /=   &=   |=  ~=   >>=  <<=

    i+=1实际上就是i=i+1
    

    相关文章

      网友评论

          本文标题:Java关键字及运算符

          本文链接:https://www.haomeiwen.com/subject/rpyafhtx.html