JAVA学习第二天
注释
- 单行注释
单行注释用双斜杠
public class Day_2 {
public static void main(String[] args) {
//我是单行注释
//我是单行注释
//我是单行注释
System.out.println("Hello World");
}
}
- 多行注释
多行注释用“ /**/ "
public class Day_2 {
public static void main(String[] args) {
/*我是多行注释
我是多行注释
我是多行注释*/
System.out.println("Hello World");
}
}
- 文档注释
见 JavaDoc 部分
标识符
- java所有的组成部分都需要名字。类名、变量名以及方法名都被称为标识符
- 标识符都应该以字母、美元符($)或者下划线开始
- 首字符之后可以是字母、美元符、下划线或数字的任何组合
- 不能使用关键字作为变量名或方法名
- 标识符是大小写敏感的
- 可以使用中文,但不建议
- 常见关键字
abstract | assert | boolean | break | byte |
---|---|---|---|---|
case | catch | char | class | const |
continue | default | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instanceof | int | interface | long | native |
new | package | private | protected | public |
return | strictfp | short | static | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
数据类型
- 编程语言分为强类型语言(即要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用)和弱类型语言
-
java数据类型
(1)基本类型
(2)引用类型
-
拓展
(1)整数拓展——进制
// 二进制:0b 十进制 八进制:0 十六进制:0x
public class Day_2{
public static void main(String[] args){
int i_1 = 10;
int i_2 = 010;
int i_3 = 0x10;
System.out.println(i_1);
System.out.println(i_2);
System.out.println(i_3);
}
}
(2)浮点数拓展——精度损失
//银行业务怎么表示?
public class Day_2{
public static void main(String[] args){
float f = 0.1f;
double d = 1.0/10;
System.out.println(f == d); //false
float d1 = 23131312312312313f;
float d2 = d1 + 1;
System.out.println(d1 == d2); //true
}
}
(3)字符拓展
① 强制类型转换
public class Day_2{
public static void main(String[] args){
char c_1 = 'a';
char c_2 = '中';
System.out.println(c_1);
System.out.println((int)c_1);
System.out.println(c_2);
System.out.println((int)c_2);
}
}
② 转义字符
public class Day_2{
public static void main(String[] args){
// \n:换行
// \t:制表符
System.out.println("Hello\nWorld");
}
}
③ 字符比较(后续深入)
public class Day_2{
public static void mian(String[] args){
String s_a = new Srting("Hello world");
String s_b = new String("Hello world");
String s_c = "Hello world";
String s_d = "Hello world";
System.out.println(s_a == s_b);
System.out.println(s_c == s_d);
}
}
(4)布尔值扩展——判断
public class Day_2{
public static void main(String[] args){
boolean flag = true;
//下面两个判断语句效果完全一样
if (flag == true){}
if (flag){}
}
}
类型转换
- java是强类型语言,所以进行有些运算的时候,需要用到类型转换
低 ------------------------------------------------------>高
byte, short, char --> int --> long --> float --> double
- 运算过程中,不同类型的数据先转换为同一类型,然后进行计算
- 类型转换分为 强制类型转换 和 自动类型转换
(1)强制类型转换(高 --------> 低)
public class Day_2{
public static void main(String[] args){
int i = 128;
byte j = (int)i;
System.out.println(i);//输出:128
System.out.println(j);//输出:-128 -------->内存溢出(byte最大存127)
}
}
(2)自动类型转换(低 --------> 高)
public class Day_2{
public static void main(String[] args){
int i = 128;
double k = i;
System.out.println(i);
System.out.println(k);
}
}
- 注意点
① 不能对布尔值进行转换
② 不能把对象类型转换为不相干的类型(?)
③ 转换的时候可能存在内存溢出或精度问题
④ 操作比较大的数时,注意溢出问题
public class Day_2{
public static void main(String[] args){
int money = 10_0000_0000;//JDK新特性:数字间可用下划线分割
int years = 20;
int total = money * years;
System.out.println(total)//输出:-1474836480
}
}
变量
- java是强类型语言,每个变量都必须声明类型
- java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域
type varName [=value] [{, varName[=value]}]
数据类型 变量名 = 值 ; 可以使用逗号隔开来声明多个同类型变量
- 变量作用域(后续深入)
①类变量
② 实例变量(方法外,类中,可以不初始化)
③ 局部变量(方法中,必须声明和初始化)
- 注意事项:
① 每个变量都有类型,类型可以是基本类型,也可以是引用类型
② 变量名必须是合法的标识符
③ 变量声明是一条完整的语句,因此每一个声明都必须以分号结束
常量
- 常量:初始化后不能再改变,不会变动的值
- 常量可以理解为一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变
final 常量名 = 值;
final double PI = 3.14;
- 常量名一般使用大写字符
运算符
- java语言支持如下运算符(与C语言一样)
算数运算符:+,—,*,/,%,++,—— --------------> 重难点:5/2 = 2 |
---|
赋值运算符:= |
关系运算符:>,<,>=,<=,==,!=,instanceof |
逻辑运算符:&&,||,! ---------------------> 重难点:短路运算 |
位运算符:&,|,^,~,>>,<<,>>> |
条件运算符:? -------------------------> 例如:a<b?a:b |
扩展赋值运算符:+=,-=,*=,/= |
- 幂运算等要借助“类”:Math
- 运算符的优先级(总体按照:算关逻条赋)
包机制
- 为了更好地组织类,Java提供了包机制,用于区别类名的命名空间(理解:将同名文件放入不同文件夹)
- 包语句的语法格式:
package pkg1[.pkg2[.pkg3 ...]]
- 一般利用公司域名倒置作为包名
- 若要使用一个包的成员,我们需要在java程序中明确导入该包。
import package1[.package2 ...].(classname|*);
import java.util.Date;
JavaDoc
- javadoc命令是用来生成自己API文档的
- 参数信息
@author 作者名 |
---|
@version 版本号 |
@since 指明需要最早使用的jdk版本 |
@param 参数名 |
@return 返回值情况 |
@throws 异常抛出情况 |
package study
/**
* @author xianyun1211
* @version 1.0
* @since 1.8
*/
public class Day_2{
public static mian(String[] args){
…………………………
}
}
- javadoc用法——通过命令行生成JavaDoc文档
① 打开java文件所在文件夹
② 通过导航栏打开控制台
③ 用javadoc命令生成文档
④ 返回文件夹,找到index.html,打开即可