Java基础语法入门

1、Java运行原理

  

 

2、  标识符

标识符:是被Java语言赋予特殊含义,具有专门用途的单词,比如之前接触的class,int,double均为Java已经预设好的,常见关键字有public static void class等;

标识符的命名规则:1、英文大小写字母;2、数字字符;3、$和_;

注意事项:1、数字不能开头 2、不可以使用关键字 3、严格区分大小写,不限制长度 4、起名时,尽量达到见名知意。

3、数据类型与变量

   基本数据类型:整数(byte、short、int、long)、小数(float、double)、字符类型(char)、布尔类型(boolean)

   引用数据类型:是强大的数据类型,它是基于基本数据类型创建的。JavaSE中提供了一个超级类库,类库中包含了近万种引用数据类型。

  常量:就是不变的数据量,在程序执行的过程中其值不可以发生变化;

变量:如同内存中的一个小容器,用来装数据,其功能为存取数据;

定义变量的语法格式:

数据类型  变量名  =  变量值;

             int         a    =  100;     

例:public class AAA {

                     public static void main(String[] args) {

                            int a = 10;

                            double b = 3.14;

                            char c = 'z';

                            String s = "i love java";

                            a = 20;

                            System.out.println(a);

                     }

              }

4、数据类型的转换

   1)、自动类型转换:表示范围小的数据类型转换成范围大的数据类型,这种方式称为自动类型转换

                   int i = 100;

                                double d2 = i;

    2)、强制类型转换:

表示范围大的数据类型转换成范围小的数据类型,这种方式称为强制类型转换

如:int  i = (int)6.718;   //i的值为6

5、修饰符与运算符

修饰符:修饰类中方法和属性。主要有两类修饰符:

访问控制修饰符:default , public, protected, private

非访问控制修饰符:final,abstract,static,synchronized

运算符:

1)   算数运算符

+:    +3=5(正号)   2+3=5(加号) “你”+”好”=”你好”

-:    -3(负号)   5-3=2(减号)

*  乘号   / 除号  % 取模 ++自加  --自减

注意事项

           a:加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。

              b:除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。

              c:“%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。

              d:整数做被除数,0不能做除数,否则报错。

              e:小数做被除数,整除0结果为Infinity,对0取模结果为NaN

2)      比较运算符

  ==      相等于,     !=  不等于,   <      小于,> 大于,<=     小于等于,>=     大于等于

比较运算符成立为true  不成立为false

3)       逻辑运算符

&    与;  |     或;^ 异或;!  非;&& 短路与;||     短路或  

5) 三元运算符

(条件表达式)?表达式1:表达式2;

例:System.out.println( 3>2 ? “正确” : “错误” );

                 // 三元运算符运算后的结果为true,运算结果为表达式1的值“正确”,然后将 结果“正确”,在控制台输出打印

5、流程控制

  If语句:

    if语句格式第一种

               书写格式

                     if(比较表达式) {

                            语句体;

                     }

       执行流程:

                      先计算比较表达式的值,看其返回值是true还是false。

                      如果是true,就执行语句体;

                      如果是false,就不执行语句体;

示例:public class IfDemo{

                     public static void main(String[] args){

                              int i = 5 ;

                              //对变量i进行if判断

                              if(i > 5){

                                     System.out.println("if中的条件是true");

                                     i++;

                              }

                             

                              System.out.println(i);

                     }

              }

if语句格式第二种

              书写格式

                     if(比较表达式) {

                            语句体1;

                     }else {

                            语句体2;

                     }

              执行流程:

                     * 首先计算比较表达式的值,看其返回值是true还是false。

                     * 如果是true,就执行语句体1;

                     * 如果是false,就执行语句体2;

       示例:

              public class IfElseDemo{

                     public static void main(String[] args){

                          int i = 16 ;

                             //判断变量,是奇偶数, 除以2,看余数是0还是1

                             if( i % 2 == 0 ){

                                    System.out.println(i+" 是偶数");

                             }else{

                                    System.out.println(i+" 是奇数");

                             }

                  }

              }

   For循环:

        使用格式

                      for(初始化变量 ; 条件 ; 增量){

                             循环体;

                      }

         各模块解释

                     初始化变量: 定义变量,作用是用来控制循环的次数

                  条件: 当条件是true,执行循环体,条件是false,结束循环

                  增量: 变量自增情况

       例:

              public class ForDemo{

                     public static void main(String[] args){

                            //for循环,输出0-10

                            for(int i = 0 ; i < 11 ; i++){

                                   System.out.println(i);

                            }

                     }

              }

 

 

do_while循环

         使用格式

                     do{

                        循环体;

                  }while(条件);

              执行顺序

                     先执行一次循环体,然后再判断条件,如果条件为true,继续执行循环体,

                     如果条件为false,循环结束。

              特点

                     * 无条件先执行一次

例:

              public class DoWhileDemo{

                     public static void main(String[] args){

                            int i = 0;

                            do{

                                   System.out.println(i);

                                   i++;

                            }while( i <  5);

                     }

              }

continue语句

       作用

            提前结束本次循环,继续进行下次循环

       使用方式

            无法单独使用,必须将continue关键字置于循环语句中

       运行规律

               不需要判断任何条件,只要遇到continue变直接跳出本轮循环进行下次循环

       例:

                     public class ContinueDemo{

                            public static void main(String[] args){

                                   for(int i = 0 ; i < 10 ; i++){

                                          if(i%2==0){

                                                 continue;

                                          }

                                          System.out.println(i);

                                   }

                            }

                     }

                     //会把0-9之间所有的奇数打印到控制台上

switch语句解构

        switch只能针对某个表达式的值作出判断,从而决定程序执行哪一段代码。

 

        格式如下:

                    swtich(表达式){

                              case 常量1 :

                                要执行的语句;

                              break;

                             

                              case 常量2 :

                                要执行的语句;

                              break;

                             

                              case 常量3 :

                                要执行的语句;

                              break;

                             

                              default:

                                要执行的语句;

                              break;

                       }

执行流程:  表达式,和case后面的常量进行比较和哪个case后的常量相同,就执行哪个case后面的程序,遇到break,就全结束

6、数组  

             

格式:数据类型[] 数组名 = new 数据类型[元素个数或数组长度];

例:int[] x = new int[100];

注意:1)数据类型: 数组中存储元素的数据类型

              2) [] 表示数组的意思

              3) 变量名  自定义标识符 

              4) new  创建容器关键字

              5)数据类型: 数组中存储元素的数据类型

              6)[]  表示数组的意思

              7)元素个数,就是数组中,可以存储多少个数据 (恒定, 定长)

              数组是一个容器: 存储到数组中的每个元素,都有自己的自动编号

              自动编号,最小值是0, 最大值,长度-1

              自动编号专业名次, 索引(index), 下标, 角标

              访问数组存储的元素,必须依赖于索引, 公式 数组名[索引]

              Java提供一个属性,操作索引的

              数组的一个属性,就是数组的长度, 属性的名字 length

              使用属性:  数组名.length  数据类型 int

              数组的最小索引是0, 最大索引数组.length-1

7、类与方法

:具有相似属性和方法的对象的集合,是具有相同数据成员和函数成员的一组对象的集合,它为属于该类的全部对象提供了抽象的描述

方法:一般为类的行为

方法的格式

                     修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) {

                            方法体语句;

                            return 返回值;

                     }

   例:public class MethodDemo{

      

                     public static void main(String[] args){

                             //调用方法, 方法执行起来

                             // 在方法main中,调用方法 getArea

             

                             int area = getArea(5,6);

                             System.out.println("面积是: "+area);

                           

                     }

方法的调用:

在main函数中调用方法,让方法执行

例:public class MethodDemo_1{

                     public static void main(String[] args){

                           double x=3;

                 double y=5;

                 double z=3;

                 double s=getAvg(x,y,z);

                 System.out.println(avg); 

                     }

         public static double getAvg(double a, double b,double c){

                             return (a+b+c)/3;

                     }

}

方法的重载:在同一个类中,方法名相同,参数列表不同。与返回值类型无关。

    参数列表不同:

                      A:参数个数不同

                  B:参数类型不同

                     C:参数的顺序不同

例:public static int getSum(int a,int b){

                     System.out.println("两个int参数");

                     return a+b;

              }

              public static int getSum(int a,int b,int c){

                     System.out.println("三个int参数");

                     return a+b+c;

              }

              public static double getSum(double a,double b){

                     System.out.println("两个double参数");

                     return a+b;

              }

8、泛型:

泛型是jdk5引入的类型机制,就是将类型参数化,它是早在1999年就制定的jsr14的实现。

泛型机制将类型转换时的类型检查从运行时提前到了编译时,使用泛型编写的代码比杂乱的使用object并在需要时再强制类型转换的机制具有更好的可读性和安全性。

例:public class GenericDemo {

      public static void main(String[] args) {

        function();

      }

      public static void function(){

        Collection<String> coll = new ArrayList<String>();

        coll.add("abc");

        coll.add("rtyg");

        coll.add("43rt5yhju");

    //    coll.add(1);

       

        Iterator<String> it = coll.iterator();

        while(it.hasNext()){

          String s = it.next();

          System.out.println(s.length());

        }

      }

    }

9、类的声明与实例化

类的定义:

如下例:

  public class Dog{

    String name;

    int age;

   

    void bark(){  // 汪汪叫

        System.out.println("汪汪,不要过来");

    }

 

    void hungry(){  // 饥饿

        System.out.println("主人,我饿了");

    }

}

类的实例化:

Dog myDog; // 声明一个对象

myDog = new Dog("花花", 3); // 实例化

 

 

  

 

posted @ 2019-04-21 23:27  友人Y  阅读(247)  评论(0编辑  收藏  举报