zoukankan      html  css  js  c++  java
  • Java基础部分(1)

    适合人群

      适合拥有一门编程语言基础的人快速迁移各种语言的基础部分。初学者可以将其当做学习大纲或者是学习顺序指南,仅仅是个人建议,仅供参考。

    Java语言关键字

      

    于定义数据类型的关键

    class

    interface

    byte

    short

    int

    long

    float

    double

    char

    boolean

    void

           

    用于定义数据类型值的关键字

    true

    false

    null

       

    用于定义流程控制的关键字

    if

    else

    switch

    case

    default

    while

    do

    for

    break

    continue

    return

           

    用于定义访问权限修饰符的关键字

    private

    protected

    public

       

    用于定义类,函数,变量修饰符的关键字

    abstract

    final

    static

    synchronized

     

    用于定义类与类之间关系的关键字

    extends

    implements

         

    用于定义建立实例及引用实例,判断实例的关键字

    new

    this

    super

    instanceof

     

    用于异常处理的关键字

    try

    catch

    finally

    throw

    throws

    用于包的关键字

    package

    import

         

    其他修饰符关键字

    native

    strictfp

    transient

    volatile

    assert

      如果能够掌握编程语言的关键字的使用,那么就掌握了绝大部分的主要语法。而且计算机中唯一需要背的单词就是关键字。虽说一些方法也需要背,不过如果记不住。也可以自己写。所以,只有关键字需要记忆。

    Java语言语法部分

      注释

      单行注释:

        格式: //注释内容

      多行注释:

        格式:/*注释内容*/

      文档注释:

        格式:/** 文档内容  */

      数据类型

      

    特别说明:在引用数据类型中,类的部分中,常用的数据类型有:String(字符串)和集合。集合下面有两个分支:Collection(相当于可变数组)、Map(相当于字典,以键值对的形式存储)

    Collection
      |--List 有序,可重复
        |--ArrayList
          底层数据结构是数组,查询快,增删慢。
          线程不安全,效率高
        |--Vector
          底层数据结构是数组,查询快,增删慢。
          线程安全,效率低
        |--LinkedList
          底层数据结构是链表,查询慢,增删快。
          线程不安全,效率高
      |--Set 无序,唯一
        |--HashSet
          底层数据结构是哈希表。
          如何保证元素唯一性的呢?
            依赖两个方法:hashCode()和equals()
            开发中自动生成这两个方法即可
          |--LinkedHashSet
            底层数据结构是链表和哈希表
            由链表保证元素有序
            由哈希表保证元素唯一
        |--TreeSet
          底层数据结构是红黑树。
          如何保证元素排序的呢?
            自然排序
            比较器排序
          如何保证元素唯一性的呢?
            根据比较的返回值是否是0来决定


    Map

      |--HashMap

        底层数据结构是哈希表

        存储的是键值对形式的元素,键唯一,值可以重复。

      运算符

    算数运算符

      +(加),-(减),*(乘),/(除),%(取余),++(加价),--(减减),+(字符串拼接)

    赋值运算符

      =,+=,-=,*=,/=,%=  

      例:5+=1   等价于  5=5+1;     x+=1 等价于 x=x+1;    

      注意:=是赋值运算   ==是比较运算,也就是数学中的等于号

    比较运算符

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

      所有赋值运算都返回boolean值,也就是 true 和 false

    逻辑运算符

      &(逻辑与),|(逻辑或),^(逻辑异或),!(逻辑非),&&(短路与),||(短路或)

      都返回boolean值

    位运算符

      <<(左移),>>(右移),&(与运算),|(或运算),^(异或运算),~(反码),>>>(无符号右移)

      注意1:参与位运算的都是数字,返回值也是数字。而参与逻辑运算的都是boolean类型,返回值也是boolean

      注意2:这些运算都需要将数字,转换为二进制再进行运算。

    三元运算符

      格式:

      (关系表达式)?表达式1:表达式2;

      如果表达式是true,则运算的结果为表达式1

      如果表达式是false,则运算的结果为表达式2

       逻辑结构

    选择结构1:if  else if  else

    例:

    if(关系表达式1){
        语句体1;
    }else if(关系表达式2){
      语句体2;  
    }else{
      语句体3;      
    }

    注意:关系表达式返回值必须是boolean类型。其他类型的返回值都会报错。

    选择结构2:switch 语句

    例:

    switch(条件表达式){
        case 值1:
               语句体1;
               break;          
        case 值2:
               语句体2;
               break; 
        ......       
       default:
               语句体n+1;
               break;        
             
    }
    

    特别说明:表达式的取值:byte、short、int、char。JDK5以后可以是枚举,JDK7以后可以是String。

    循环结构1 :for

    for(初始化语句;判断条件语句;控制条件语句){
         循环体语句;
    }
    //具体例子
    for(int i=0;i<10;i++){
         System.out.print(i);  
    }
    

      方式二:增强for

    格式:
    for(元素数据类型 变量 : 数组或者Collection集合) {
        使用变量即可,该变量就是元素
        }
    //具体例子:
    ArrayList<Integer> list = new ArrayList<Integer>();
    for( int i :list ){
      System.out.print(i);  
    }
    
    //好处:简化遍历

    循环结构2:while

    while(判断条件语句){
        循环体语句;
    }
    //具体例子
    int i=0;
    while(i<10){
      System.out.print(i);
      i++;  
    }

    循环结构3:do while

    初始化语句;
    do{
      循环语句体;
      控制条件语句;
    }while(判断条件语句);
    
    //具体例子
    int i=0;
    do{
        System.out.print(i);
        i++;
    }while(i<10);

    特别说明:在开发过程中,如果已知循环次数则使用for,如果循环次数不确定则使用while。

    跳转控制语句

      break;//跳出单层循环

            continue//退出本次循环

       return//结束当前方法

     

  • 相关阅读:
    信息爆炸时代,对待信息的三种方式
    Spring事务管理
    归并排序和快速排序的衍生问题
    Linux之Shell命令
    程序员找工作的干货经验
    css3 Transition动画执行时有可能会出现闪烁的bug
    布尔值
    null, undefined理解
    js文字的无缝滚动(上下)
    vue实现文字上下滚动
  • 原文地址:https://www.cnblogs.com/jike8023/p/9881106.html
Copyright © 2011-2022 走看看