Java基础
2021/9/11 17:04:56
本文主要是介绍Java基础,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
注释
- 单行注释
//
- 多行注释
/* */
- 文档注释
/** */
标识符
- 所有的标识符都应该以字母(A-Z或者a-z),美元符($)、或下划线(_)为首字符
- 首字符之后可以是字母(A-Z或者a-z),美元符($)、下划线(_)或数字的字符任意组合
- 不能使用关键字作为变量名或方法名
- 标识符是大小敏感的
数据类型
-
强类型语言是一种强制类型定义的语言,即一旦某一个变量被定义类型,如果不经强制转换,那么它永远就是该数据类型。
-
弱类型语言是一种弱类型定义的语言,某一个变量被定义类型,该变量可以根据环境变化自动进行转换,不需要经过现行强制转换。
Java的数据类型分为两大类
- 基本类型(primitive type)
- 引用类型(reference type)
int iNum = 1; byte bNum = 1; short sNum = 1; long lNum = 1L; float fNum = 1F; double dNum = 1; boolean flag = true; char c = '颜';
-
1bit表示1位
1Byte表示一个字节 1B = 8b
B -> KB -> MB -> GB -> TB -> PB -> EB -> ZB -> YB -> NB -> DB -> CB -> XB
-
拓展
-
整数
int i = 10; // 十进制 int i1 = 0b10; // 二进制 int i2 = 010; // 八进制 int i3 = 0x10; // 十六进制
-
float: 有限、离散、舍入误差、大约、接近但不等于,无法进行比较,可使用BigDecimal
-
unicode表
- 2个字节,2^16=65536,范围:[u0000,uFFFF]
- 每个字符对应的一个数字(a = 97,A = 65)
- 亦可表示为:'\u0061' --> a
-
转义字符
- \t 制表符
- \n 换行
-
类型转换
转换规则
-
由低到高(自动转换):byte,short,chat -> int -> long -> float -> double
-
运算中,不同类型的数据先转换为同一类型,然后进行运算
-
由高到低(强制转换):
(类型)变量名
,可能存在内存溢出或精度问题int i = 128; byte b = (byte)i; // -128,内存溢出 int i1 = (int)23.7; // 23,精度问题
拓展
-
数字之间可以使用下划线分隔(JDK7新特性)
int i = 10_0000_0000; // 1000000000
-
操作较大数值时,注意溢出问题
int i = 10_0000_0000; int j = 20; System.out.println(i*j); // -1474836480 System.out.println(i*(long)j); // 20000000000
变量命名规范
- 所有变量、方法、类名:见名知意
- 类成员变量:小驼峰法
- 局部变量:小驼峰法
- 常量:大写字母和下划线
- 类名:大驼峰法
- 方法名:小驼峰法
小驼峰法:第一个单词以小写字母开始;第二个单词的首字母大写;
大驼峰法:每一个单词的首字母大写;
运算符
- 算术运算符:
+,-,*,/,%,++,--
- 赋值运算符:
=
- 关系运算符:
>,<,>=,<=,==,!=,instanceof
- 逻辑运算符:
&&,||,!
- 位运算符:
&,|,^,~,>>,<<,>>>
- 条件运算符:
? :
- 扩展赋值运算符:
+=,-=,*=,/=
++
(自增)、--
(自减)
++
在前:计算前自增,++
在后:计算后再自增
int a = 3; int b = a++; // b = a++ ==> b = a; a = a + 1; 赋值给b后,a才自增。 int c = ++a; // c = ++a ==> a = a + 1; c = a; 在赋值给c前,a已经自增。 System.out.println(a); // 5 System.out.println(b); // 3 System.out.println(c); // 5
逻辑运算符
&&
:全真才为真||
:全假才为假!
:取反- 短路运算:当一个参与运算的操作数足以推断该表达式的值时,另一个操作数就不会执行。
boolean a = true; boolean b = false; int c = 5; System.out.println(a && b); // false System.out.println(a || b); // true System.out.println(!(a && b)); // true System.out.println(c < 4 && c++ > 4); // false System.out.println(c); // 5 因为c < 4已经足以推断表达式(false),所以c++不执行
位运算符
&
:全1取1,其余取0|
:有1取1,全0取0~
:取反^
:相同取0,不同取1。异或等于不进位的二进制加法。>>
:/2<<
:*2
字符串连接符
int a = 10; int b = 20; System.out.println(a + b + ""); // 30 System.out.println("" + a + b); // 1020
三元运算符
int score = 60; System.out.println(score >= 60 ? "及格" : "不及格"); // 及格 score = 50; System.out.println(score >= 60 ? "及格" : "不及格"); // 不及格
包机制
- 本质为文件夹
- 利用公司域名倒置作为包名:www.baidu.com -> com.baidu.www
JavaDoc
Javadoc用于描述类或者方法的作用。Javadoc可以写在类上面和方法上面。
此博主写得很详细:Javadoc 使用详解_monday的博客
- @auther 作者名
- @version 版本号
- @since 指明需要最早使用的jdk版本
- @param 参数名
- @return 返回值情况
- @throws 异常抛出情况
使用控制台生成javadoc文档
javadoc -encoding UTF-8 -charset UTF-8 Demo07.java
使用idea生成javadoc文档
- 选择生成JavaDoc的范围
- 选择输出路径
- 填写Locale:
zh_CN
- 填写Other command line arguments:
-encoding UTF-8 -charset UTF-8 -windowtitle "接口wiki" -link http://docs.Oracle.com/javase/8/docs/api
这篇关于Java基础的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-27本地多文件上传简易教程
- 2024-11-26消息中间件源码剖析教程
- 2024-11-26JAVA语音识别项目资料的收集与应用
- 2024-11-26Java语音识别项目资料:入门级教程与实战指南
- 2024-11-26SpringAI:Java 开发的智能新利器
- 2024-11-26Java云原生资料:新手入门教程与实战指南
- 2024-11-26JAVA云原生资料入门教程
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门