java入门
1、java跨平台原理:JVM(java虚拟机)
2、JRE:包括JVM和运行所要的核心类库 JDK:编译工具javac.exe 运行工具java.exe (在bin目录下)
3、常用DOS命令
(1)dir:显示目录
(2)cd目录:进入单级目录
(3)cd ..:回到上一级目录
(4)cd \:回退至盘符
(5)cls:清屏
(6)Tab:自动补全功能
4、命令行编译
(1)编译:javac Hello.java
(2)执行:java Hello
5、注释
(1)单行注释: //
(2)多行注释:/* */
6、关键字
(1)字母全部小写
7、常量
(1)程序运行不可改变量
(2)字符常量:‘A’,单引号括起来的内容
(3)布尔常量:true false
(4) 空常量:NULL不能单独使用
8、数据类型
(1)1B=8bit
(2)基本数据类型 byte 1 short 2 int 4 long 8 float 4 double 8 char 2 boolean 1
9、变量
(1)long l = 10000L
(2)float f = 13.14F
10、标识符
(1)不能由数字、字母、下划线、美元符组成
(2)不能以数字开头
(3)不能是关键字
(4)区分大小写
(5)小驼峰命名法:方法、变量
(6)大驼峰命名法:类
11、类型转换
(1)自动类型转换(范围小到范围大,Boolean不参与,char与short不能转换)
(2)强制类型转换(范围大到范围小,格式:目标数据类型 变量名 = (目标数据类型)值或者变量) 例:int k = (int) 88.88
12、运算符
(1)算数表达式包含多个基本数据类型,类型会自动提升 byte short char-->int-->long-->float-->double
(2)“it”+ 666 +是字符串连接符 输出:it666 1 + 99 + "知识" 出现连续+ ,从左向右运算 输出:100知识
(3)&:逻辑与 | :逻辑或 ^ :逻辑异或 相同false,不同true ! :逻辑非 && : 短路与 有false则false,左边false右边不执行 || :短路或 有true则true,左边true右边不执行
(4)三元运算符 格式:关系表达式?表达式1:表达式2 例:a>b ? a:b 如果为true,a为运算结果 如果为false,b为运算结果
13、数据输入
Scanner 创建对象 Scanner sc = new Scanner(System.in); 接受数据 int i = sc.nextInt();
14、结构语句
(1)顺序结构
(2)if语句:true执行 格式1: if(关系表达式){ 语句体; } 格式2: if(关系表达式){ 语句体1 } else { 语句体2; } 格式3:if(关系表达式1){ 语句体1; } else if (关系表达式2){ 语句体2; } else { 语句体3;}
(3)switch语句 default所有情况不匹配 直至遇见break结束 (无break就存在case穿透) 格式:switch(表达式){ case 值1: 语句体1; break; case 值2: 语句体2; break; ...... default: 语句体n + 1; break;}
(4)求一个数的个位、十位、百位 例:求132 百位:132/10/10%10 十位:132/10%10 个位:132%10
15、循环语句
(1)for 循环 条件为true继续执行,false结束 格式:for(初始化语句;条件判断语句;条件控制语句){ 循环体语句;}
(2)while循环 条件为true继续执行,false结束 格式: 初始化语句 while(条件判断语句){ 循环体语句; 条件控制语句;}
(3)do ... while循环 while中的条件判断为true继续执行,false结束 格式:初始化语句 do { 循环体语句; 条件控制语句; } while(条件判断语句);
(4)三种循环区别: for 循环、while 循环是先判断后执行 do ... while 循环是先执行一次循环体,再判断条件
(5)for 和while的区别 for循环中的自增变量结束后不能访问 while循环则可以访问
(6)循环嵌套:for循环里for循环
16、跳转控制语句
(1)continue:基于条件控制,跳过某次循环体内容的执行,继续下一次的执行
(2)break:基于条件控制,终止循环体内容的执行,结束当前的整个循环
17、Random (产生随机数)
创建对象:Random r = new Random(); 获取随机数:int number = r.nextInt(10); 获取数据的范围:[0,10)
18、一维数组(Array)
(1)存储多个相同类型数据
(2)格式:数据类型[] 变量名 int[] arr 定义一个int类型数组,名为arr 数据类型 变量名[] int arr[] 定义一个int类型变量,名为arr数组
(3)动态初始化 格式:数据类型[] 变量名=new 数据类型[数组长度]; int[] arr = new int[3];
(4)Java中内存分配 整数:默认值 0 浮点数:默认值 0.0 布尔值:默认值 false 字符:默认值 空字符 引用数据类型:默认值 null
堆内存:存储new出来的内容(实体、对象),每一个new出来的东西都有一个地址值,使用完会在垃圾回收器空闲时被回收 栈内存:存储局部变量,定义在方法中的变量,如arr,使用完立即消失
(5)静态初始化 格式:数据类型[] 变量名 = new 数据类型[]{数据1,数据2,...}; 例子:int[] arr = new int[] {1,2,...}; 简化:数据类型[] 变量名 = {数据1,数据2,...};
(6)两个小问题 索引越界 空指针异常
(7)数组常见操作 遍历:获取数组长度 数组名.length 例子:arr.length 数组获取最值:
1.定义一个变量,用于保存最值
2.取数组中第一个数据作为变量的初始值
3.与数组中剩余数据逐个对比,每次比对将最大值保存到变量中
4.循环结束打印变量值
19、方法
(1)方法定义 格式:public static void 方法名(){ 方法体 }
(2)调用 格式:方法名();
(3)带参数方法定义 格式:public static void 方法名(数据类型 变量名1,数据类型 变量名2,...){ }
(4)带返回值的方法定义 格式:public static 数据类型 方法名(参数){ return 数据; }
(5)带返回值方法调用 格式:数据类型 变量名 = 方法名(参数); 例子:boolean flag = isEvenNumber(5);
(6)方法的注意 方法不能嵌套 void无返回值
(7)方法通用格式 public static 返回值类型 方法名(参数){ 方法体; return 数据; }
(8)方法重载 多个方法在同一个类中 多个方法具有相同的方法名 多个方法的参数不相同,类型不同或者数量不同
(9)方法参数传递(基本类型) 对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
(10)方法参数传递(引用类型) 对于引用类型的参数,形式参数的改变,影响实际参数的值
20、Debug 断点调试
标签:语句,Java,入门,int,true,数据类型,格式,方法 From: https://www.cnblogs.com/it-java-ls/p/17030141.html