要想学好Java,基础是必须先学好的,基础学不好,以后可难学了!
JDK :java开发环境 包含JRE和开发工具(编译和运行java.exe工具)
JRE :java运行环境 包含JVM(java虚拟机)和运行时需要的核心类库,运行Java程序只要装jre即可
cmd dos黑窗命令行:
编译:javac 文件名.java 例:javac Test.java
执行:Java 类名 例:Java Test
单行注释://俺是单行注释多行注释:/*俺是多行注释*/文档注释:/**俺是文档注释*/
注意:在Java中,定义啥类型,输出就啥类型!!!
Java中的主入口main:
//包 包名package com.progarmmers_road;//包名全小写//公共 类 类名public class Helloword{ //类名大驼峰写法// 公共 静态共享 空 主方法 字符串 参数 public static void main(String[] args){//写死的 int num = 10;// 系统 输出 打印 打印结果 System.out.println("运行成功!先编译Javac 类名.java,再运行java 类名");//打印这句话 testNmae();//调用方法 }// 普通方法// 公共 空 方法名(参数) public void testNmae(){//小驼峰写法:方法名、变量名// 系统 输出 打印 打印结果 System.out.println("没有返回值的方法"); }}
关键字
关键字的字母全部小写(关键字有53个,但是...true/false/null不是严格意义上的关键字) //例列如:public static void class ...
(编辑器针对关键字有特殊的高亮颜色标记)
变量
变量:程序运行中可以改变的值 格式: 数据类型 变量名 = 值(可以是变量/常量); //例如 int i = 10; int j = i; 变量的作用域:变量只在其定义的范围内有效。//在定义的{}内使用
常量
常量:程序运行中,常量值不可以发生改变,值写啥就是啥! 常量分类: 字符串常量 双引号里面的内容 //"helloword" "俺要学Java" 整数常量 不带小数的数字 //666 -88 100 小数常量 带小数的数字 //3.14 5.2 -80.6 字符常量 单引号里面的内容, 且必须是单个的内容 //'A' '0' '俺' 表示一个字符 布尔常量 布尔值,表示真假 //只有2个值:true false null空常量 一个特殊的值,空值,代表真不存在,在计算机中根本不存在,所以不能直接打印 //null 空常量不能直接输出
数据类型
数据类型: 基本数据类型:(口诀:四类八种) //比较的是值 数值型: 整数(byte,short,int(默认).long) //一般long变量定义时防止整数过大,后面要加L // long a = 100000L; //整数类型默认值0 浮点型(float.double(默认)) //小数 float变量定义时防止整数过大,后面要加F // float a = 100000F; //小数类型默认值0.0 字符(char) //只能单个字符 c = '俺'; //字符类型默认值是空字符 非数值型: 布尔(boolean)// true false //布尔类型默认值是flase 引用数据类型://引用数据类型默认值null 比较的是地址值 类(class) 接口(interface) 数组([]) 枚举(enum) 注解(annotation)
标识符
标识符://给类,方法,变量起名的符号 由数字、字母下划线、美元$符号组成,不能数字开头、区分大小写 小驼峰命名法://方法、变量 标识符是一个单词时首字母小写// name 标识符由多个单词组成时,第一单词首字母小写,其他单词首字母大写// fileName 大驼峰命名法: //类 标识符是一个单词时,首字母大写//File 标识符由多个单词组成时,每个单词首字母大写//ClassName
类型转换
类型转换: 自动类型转换:把数据范围小的数值或变量赋值给另一个数据范围大的变量 //double = 10; 等级 byte -> short -> int -> long -> float -> double char 强制类型转换:把数据范围大的数值或变量赋值给另一个数据范围小的变量 格式: 目标数据类型 变量名 = (目标数据类型)值或变量; //int k = (int)88.88;结果为88
算数运算符
算数运算符 运算符:对常量或变量进行操作的符号 + //c = a + b - //c = a - b * //c = a * b / //c = a / b % //c = a % b 取余数 字符的"+"操作 int i = 10; char c = 'A'; System.out.println(i + c);//75 A是65 System.out.println("java" + 8 + 66 );//出现字符串 +是拼接 java866 System.out.println(1 + 99 +"java" );//先整数加法操作 再拼接 100java 赋值运算符(隐含了强制转换) = 赋值 //int i = 10; += 加后赋值 //a += b 等价于 i = i + 10; -= 加后赋值 //a -= b 等价于 i = i - 10; *= 加后赋值 //a *= b 等价于 i = i * 10; /= 加后赋值 //a /= b 等价于 i = i / 10; %= 加后赋值 //a %= b 等价于 i = i % 10; 自增自减运算符:单独使用时(++在后),++和--放在前后结果一样。 //int i = 10; ^ //int i = i++; | // i = 10; | // i = 11; | //先自增11,等于号最后再执行把改回了10 参与操作时,i++先变量操作,再变量++或者-- //先用后增,先减后用 参与操作时(++在前),++i先变量++或者--,再变量操作 //先增后用,先用后减 ++ //int i = 10; i++; System.out.println(i); -- //int i = 10; i--; System.out.println(i); 关系运算符(结果为boolean类型) == 相等 != 不等 > 大于 < 小于 <= 大于等于 >= 小于等于 逻辑运算符:连接关系表达式的运算符 & 逻辑与 //左右成立为true (a > b) & (a < b) //左和右都是true,结果为true,否则为false (无论左真假,右都要执行) | 逻辑或 //左右至少有一个成立 为true (a > b) | (a < b) //左和右都是false,结果为false,否则为true (无论左真假,右都要执行) ! 逻辑非 //结果相反(取反) !(a>b) ^ 逻辑异或 //左右只能有一个成立 为true (a > b) ^ (a < b) //左和右结果 不同为true,相同为false 短路逻辑运算符 && 短路与 //有flase则flase (i < j) && (i < k) //左为真,右执行,左为假,右不执行 //和 || 短路或 //有true则true (i > j) || (i>k) //左为假,右执行,左为真,右不执行 //或者 三元运算符 (结果只有 真 或 假) 格式: 关系表达式 ? 表达式 : 表达式; //true : false; 只有一个结果true 或false // a > b ? a : b; /* int a = 150; int b = 200; int c = a > b ? a : b; //true : false; System.out.println(c); //200 */
数据输入
数据输入Scanner使用步骤: 1.导包 import java.util.Scanner; 导包的动作必须出现在类定义的上面 2.创建对象 Scanner sc = new Scanner(System.in); 上面格式里,只有sc是变量名,可以变,其他不能变,如果变量名改变,接收数据的 变量名.nextInt();也要改变一样 3.接收数据 int i = sc.nextInt(); 上面格式里,只有i是变量名,可以变,其他不能变/*例如: import java.util.Scanner; public class hello{ public static void main(String[] args){ //创建对象 Scanner xx = new Scanner(System.in); //接收数据 int x = xx.nextInt(); //输出数据 System.out.print(x); } } */
今天就先介绍到这里叭。