Java 基本语法
注释
书写注释是一个非常好的习惯
Java中有三种注释
- 单行注释:只能注释一行文字
- 多行注释:能注释一段文字
- 文档注释: JavaDoc 注释文档
建立一个新的项目
新建一个模块



1. 单行注释
//
2. 多行注释
/* 注释 */
3.文档注释
/** 注释 */
标识符和关键词
关键字
- 数据类型:boolean、int、long、short、byte、float、double、char、class、interface。
- 流程控制:if、else、do、while、for、switch、case、default、break、continue、return、try、catch、finally。
- 修饰符:public、protected、private、final、void、static、strict、abstract、transient、synchronized、volatile、native。
- 动作:package、import、throw、throws、extends、implements、this、supper、instanceof、new。
- 保留字:true、false、null、goto、const。
Java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符。
标识符
-
所有标识符都应该一字母(A-Z或者a-z),美元符($)、或者下划线(_)开始
-
首字母之后可以用是字母(A-Z或者a-z)、美元符($)、或者下划线(_)或数字的任何字符组合
-
不能使用关键字作为变量名或方法名
-
标识符是大小写敏感的
合法标识符举例:age、$lucky、_value、age123
非法标识符举例:123adc、-salary、#abc
-
可以使用中文命名,但是不推荐使用,不建议使用拼音
数据类型
强类型语言
要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用
弱类型语言
要求变量符合规定
Jave的数据类型分为两大类
基本类型(primitive type)
引用类型(reference type)
基本数据类型:
-
数值类型:
-
整数类型:***(1bit=1位,1byte=一个字节=8位,1024B=1KB,1024KB=1M,1024M=1G)***
-
byte 占一个字节范围:-128-127
-
short 占2个字节范围:-32768-32767
-
int 占4个字节范围:-2147483648-2147483647
-
long 占8个字节范围:-9223372036854775808-9223372036854775807
-
浮点类型:
- float 占4个字节
- double 占8个字节
3.字符类型 char占2个字节
2.boolean类型:占1位其值只有true和false两个
引用数据类型:
类 接口 数组
public class Demo02 { public static void main(String[] args) { /*tring a="Hello,world"; int num=10; System.out.println(a); System.out.println(num);*/ //八大基本数据类型 byte num1 = 52; short num2 = 53; int num3 = 54;//最常用 long num4 = 54L;//long数据后面+L //小数:浮点数 float num5 = 55.55F;//float数据后面+F double num6 = 3.14159265358; //字符 char name ='A'; //字符串,String 不是关键字,类 String Name ="小罗小罗"; //布尔值 : 是非 boolean flag = true; //boolean flag = false; } }
知识拓展
public class Demo03 { public static void main(String[] args) { //整数拓展 : 进制 二进制0b 十进制 八进制0 十六进制 0x int i = 10; int i1 =010; //八进制0 int i2 = 0x10; // 十六进制 0x 0~9 A~F 16 System.out.println(i); System.out.println(i1); System.out.println(i2); System.out.println("========================================="); //================================================================================ //浮点数拓展? 银行业务怎么表示? 钱 //BigDecimal 数学工具类 //================================================================================ //float 有限 离散 舍入误差 大约 接近但是不等于 //double //最好完全避免使用浮点数进行比较 float f = 0.1f; double d =1.0/10; System.out.println(f==d);//false float d1 =12331123213f; float d2 =d1+1; System.out.println(d1==d2);//true //================================================================================ //字符拓展 //================================================================================ System.out.println("==============================="); char c1 ='A'; char c2 ='中'; System.out.println(c1); System.out.println((int)c1);//强制转换 System.out.println(c2); System.out.println((int)c2);//强制转换 //所有的字符本质还是数字 //编码 Unicode 表(97=a 65=A) 2字节 0-65536 //U0000 UFFFF char c3='\u0061'; System.out.println(c3);//a //转义字符 // \t 制表符 // \n 换行 // ..... System.out.println("Hello\tworld"); System.out.println("Hello\nworld"); //布尔值拓展 boolean flag = true; if (flag=true){} if (flag){}//与上一行相同 } }
类型转换
由于Jave是强类型语言,所以要进行有些运算的时候需要用到类型转换。
低-------->高
byte,short,char–>int–>long–>float–>double(小数优先级高于整数)
运算中,不同类型的数据先转化为同一类型,然后进行运算。
强制类型转换
方法:(类型)变量名。
例如:
int i =128; byte b =(byte) i;//强制转换
注意:
- 不能对布尔值进行转换
- 不能把对象转换为不相干的类型
- 在把高容量转换到低容量的时候,强制转换
- 转换的啥时候可能存在内存溢出,或者精度问题
System.out.println((int)25.25); System.out.println((int)-45.89f);
char c='a'; int d= c+1;//低转高直接就能转
public class Demo06 { public static void main(String[] args) { //操作比较大的数的时候,注意溢出问题 //数字之间可以用下划线分割 int money = 10_0000_0000; int years = 20; int total = money*years;//-1474836480已经溢出 long total1 = money*years;//默认是int,转换之前就存在问题 long total2 =((long)money)*years;//先将一个数转化为long System.out.println(total2); //long数据后面的l使用大写。 } } `` 自动类型转换
-
-