1.概述
(1).Java跨平台原理:通过不同系统对应的虚拟机来实现,JDK(java开发工具包,有了它才可以开发Java)包含JRE(Java运行时环境,有了它就可以运行Java文件),JRE包含JVM(java虚拟机,用来运行Class文件)
(2).classpath和path的区别
path环境变量,操作系统查找可执行文件的目录
classpath环境变量,java.exe查找class文件的目录
(3).注释的主要作用,可以提高代码的阅读性
2.基本语法
基本语法
(1).关键字
定义:Java赋予特定含义的单词,有特定的功能,全部都是小写的,goto,const保留(别的语言有应用)
(2).标识符
给类、接口、枚举、方法、包名、常量、变量等命名的字符序列
组成:大小写字母及数字、美元符号以及下划线
规则:不能以数字开头。严格区分度大小写,不能使用关键字,不能有空格,使用unicode编码,因此可以写中文,但不建议
(3)变量 在同一类型范围内不断变化
按数据类型分为 基本数据类型 字符型(char 2字节)、布尔型(Boolean 1字节)、浮点型(double 4字节、float8字节)、整形(byte 1 、short 2、long 4、int 8)
按声明位置 局部变量、成员变量
注意点:
先声明,后使用。有一定的作用域,同作用域不能重名
(4)类型转换
自动类型准换 低精度->高精度
CHAR
byte/char/short -> int -> long -> float -> double
boolean(不可转,不允许为null)
字符型的值可以进行运算,在运算时根据对应的ASCII码值(英语字符对应的二进制之间的关系,有128个)进行转换
4.字符串 引用数据类型,但是定义和基本类型基本一致
5.运算符
算数运算符 + - * / % ++ --
赋值运算符 = += -= *= /= %=
比较运算符 > < == != >= 位运算符 2
逻辑运算符 & | && || ! 与或非
三元运算符 条件表达式?表达式1:表达式2
6.程序流程控制
顺序、选择、循环
7.数组
存储一定元素的容器,长度一旦确定无法修改
动态初始化 int [] arr= new int[3]
静态初始化
int [] arr =new int[]{1,2,3}; int [] arr1 ={1,2,3};
@Test public void sort(){ int [] arr={12,6,78,63,95,130,4,86,99}; for (int i = 0; i < arr.length-1; i++) { for (int j = i+1; j < arr.length; j++) { if (arr[i]>arr[j]){ int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } } } for (int i : arr) { System.out.println(i); } System.out.println("------------------"); //二分查找 int head=0; int end=arr.length-1; int number =98; while (head<end){ int middle =(head+end)/2; if (number==arr[middle]){ System.out.println("查到了目标值,数组索引为:"+middle); return; } else if (number>arr[middle]){ head=middle+1; } else { end=middle-1; } } System.out.println("未查到值"); }