2.1 Java基础
[数据类型](# 2.2 数据类型)
2.1注释、标识符、关键字
File-Settings-Editor-Live Templaters
template 模板
- 例如idea中psvm,sout在哪里,如何找到?

多行注释 /* */
-
标识符: 类名,变量名, 方法名统称
-
首字符: 以字母A-Z, a-z, $, __ 不可以是数字
不能使用关键字作为变量名或者方法名(字符串String不是关键字,是类)

- 标识符是大小写敏感的
2.2 数据类型
数据类型:
- 强类型数据 变量的使用严格符合要求,先定义后使用
- 弱类型语言
Java的数据类型分为两大类

- long类型要在后面加一个L区分long : 32L(养成写大写的习惯)
- float类型要在加一个F区分double: 30.1F
- String 字符串不是关键字,是类,引用类型
- Boolean 布尔类型
2.3 类型转换
- float 比较不精确(原因在计组有讲,挖坑,晚上填)
//整数拓展 进制 二进制0b 八进制0 十六进制0x
int i1 = 10;
int i2 = 010;
int i3 = 0x11;
System.out.println(i1);
System.out.println(i2);
System.out.println(i3);
System.out.println("================================================");
// 浮点数拓展?银行钱 BigDecimal
float f =0.1f;
double d = 0.1;
System.out.println(f == d);
float f1 = 123789789;
double d1 = f1 + 1;
System.out.println(f1 == d1);


-
强制转换 char -> int 所有的字符本质是数字
写法System.out.println((int)c1);
-
unicode ascll?晚上填坑 (97 = a, 65=A) 2字节 2的16次方 0~65536
-
转义字符 \n 换行 \t 制表符
-
- 不能对布尔类型进行转换
-
不能把对象类型转换为不相干的类型
- 再把高容量向低容量转换时,需要强制转换,反之不需要( 我是联想智子展开和误入四维碎块)
- 转换时可能存在内存溢出,或者精度问题
-
jdk7新特性,数字之间可以用下划线分割。
-
int money = 1000_000_000; int year = 10; long total = ((long)money) * year;//先转换一个long,否则会溢出System.out.println(total);
-
2.4 变量常量
-
变量就是可以变化的量
Java是一种强类型语言,使用前必须声明其类型。
Java变量是程序中最基本的程序单元,其要素包括变量名,变量类型和作用域。

public class DemoEight {
//-----属性:变量
//-----方法:main||其他
//类变量 关键字static,不用类似于实例变量的new,可直接使用
static double salary = 2500;
//实例变量:从属于对象,如不初始化,将变成这个类型的默认值,数值型0||0.0,boolean默认false,其余null;
String name;
int age;
public static void main(String[] args) {
//局部变量;必须声明和初始化值
int i = 10;
System.out.println(i);
//变量类型 变量名字 = new 变量类型()
DemoEight nefu = new DemoEight();
System.out.println(nefu.age);
System.out.println(nefu.name);
System.out.println(salary);
}
}
-
常量(constant), 初始化(initialize)后不能被改变
关键字final 格式: final 常量名 = 值;(常量名一般大写)
final double PI = 3.14;
2.5 运算符
-
算术运算符: +,-,*,/,%, ++, --
有long随long,没有随int
// ++ -- int a = 3; int b = a++; //执行完这行代码后,先给b赋值,再自增,b为a的初始值! System.out.println(a); int c = ++a; //执行完这行代码前,先自增,再给c赋值,c为a变化后的值! System.out.println(a); System.out.println(b); System.out.println(c); //诸如b = a++,c = ++a,按照字面顺序理解就好! //幂运算,很多 运算会使用一些工具类实现s double pow = Math.pow(2, 3); System.out.println(pow); -
赋值运算符: =
-
关系运算符: >, < , >=, <=, ==, != , instanceof
-
逻辑运算符:&&, ||, !
ctrl + d 复制当前行到下一行 cast 转换
-
位运算符 & | ^ ~ << >>
-
三元运算符 += -= x ? y : z
package com.kuang.operator; public class Demo5 { public static void main(String[] args) { //逻辑运算 && || boolean a = true; boolean b = false; //加号链接字符串 System.out.println("a&&b: "+(a&&b)); System.out.println("a||b: "+(a||b)); System.out.println("!(a||b): "+!(a||b)); //短路运算 &&只判断第一个 //位运算 二进制 &与 |或 ^异或 ~取反 //<<左移 >>右移 效率高 System.out.println(2<<3); int c = 10; int d = 20; //字符串连接符 + String System.out.println(""+c+d); //若""在前, 后面自动转换为字符串连接 System.out.println(c+d+"");//若”“在后,为求和后加字符串; //三元运算符 x ? y ;z 如果x==true,结果为y,否则为z int score = 80; String type = score<60 ? "及格" :"+"; int score1 = 90; System.out.println(type); // String type = } }

2.6 包机制,Javadoc
为了更好的组织类,Java提供了包机制,用于区别类名的命名空间。
包的语法格式为
package pkg1[.pkg[.pkg3]];
一般用公司域名的倒置为包名;
为了能够使用某一个包的成员,使用import 明确导入该包
import package1[.package...].(classname|*);
Q : 创建包名package时, com.kuang不分级展示?
A :
>compact :紧凑的,简洁的
Q :如何具体展示某一方法?
A :CTRL + 单击,目标下发会显示横线。

Q:多行注释

A:/**回车
-
javadoc命令是用来生成自己的API( Application Programming Interface )文档的
-
@author 作者信息
-
@version 版本信息
-
@since 指明需要的JDK版本
-
@param 参数名
-
@return 返回值情况
-
@throws 抛出异常情况
-
使用cmd生成文档
在资源管理器(explorer.exe)地址栏中输入cmd




-encoding utf-8 编码格式
-charset utf-8 字符集格式
生成的API文档名称为index.html
使用IDEA生成文档


- 选择是整个项目还是模块还是单个文件
- 文档输出路径
- Locale 选择地区,这个决定了文档的语言,中文就是zh_CN
- 传入JavaDoc的参数,一般这样写 -encoding UTF-8 -charset UTF-8 -windowtitle “文档HTML页面标签的标题” -link http://docs.Oracle.com/javase/7/docs/api



浙公网安备 33010602011771号