◆平时我们编写代码,在代码量比较少的时候,我们还可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了。
◆注释并不会被执行,是给我们写代码的人看的书写
◆注释是一个非常好的习惯
◆Java中的注释有3种:
◆单行注释
◆多行注释
◆文档注释
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 所有的组成部分都需要名字。
类名、变量名以及方法名都被称为标识符。
标识符注意点:
●所有的标识符都应该以字母(A-Z 或者a-z) ,美元符($)、或者下划线( _ )开始
●首字符之后可以是字母(A-Z 或者a-z) ,美元符($) 、下划线( _ )或数字的任何字符组合
●不能使用关键字作为变量名或方法名。
●标识符是大小写敏感的
●合法标识符举例:age、$salary、_ value、_ 1 _value
●非法标识符举例:123abc、 -salary、#abc
1 public static void main(String[] args) { 2 String 王者荣耀 = "王者荣耀"; 3 System.out.println(王者荣耀); 4 }
●可以使用中文命名,但是一般不建议这样去使用,也不建议使用拼音,很Low
强类型语言
◆要求变量的使用要严格符合规定,所有变量都必须先定义后才能使用 弱类型语言
◆变量没有严格的规定,可以写的相对随意些,但是编译器相对做的更多些
Java的数据类型分为两大类
◆位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。 ?
◆字节(byte) :是计算机中数据处理的基本单位,习惯上用大写B来表示。 ?
◆1B (byte,字节) = 8bit(位) ?
◆字符:是指计算机中使用的字母、数字、字和符号
/* ◆1 bit表示1位, ◆1Byte表示一个字节 1B=8b. ◆1024B = 1 KB ◆1024KB = 1 M ◆1024M = 1G. */
1 package _JDK安装_入门程序_关键字_标识符_常量_变量._3数据类型_基本数据类型; 2 ? 3 /** 4 * @author Admin 5 * @Classname DataTypeDemo 6 * @Package _3数据类型_基本数据类型 7 * @date 2020/03/29 16:37 8 * @Description TODO 9 */ 10 /* 11 什么是字节? 12 ◆位(bit):是计算机内部数据储存的最小单位,11001100是一个八位二进制数。 13 ◆字节(byte) :是计算机中数据处理的基本单位,习惯上用大写B来表示。 14 ◆1B (byte,字节) = 8bit(位) 15 ◆字符:是指计算机中使用的字母、数字、字和符号 16 17 ◆1 bit表示1位, 18 ◆1Byte表示一个字节 1B=8b. 19 ◆1024B = 1 KB 20 ◆1024KB = 1 M 21 ◆1024M = 1G. 22 */ 23 public class DataPrimitiveTypeDemo { 24 public static void main(String[] args) { 25 //八大基本数据类型 26 27 //整数 28 int num1 = 10;//最常用 29 byte num2 = 20; 30 short num3 = 30; 31 long num4 = 30L;//Long 类型要在数字后面加个L 32 33 //小数:浮点数 34 float num5 = 50.1F;//float类型要在数字后面加个F 35 double num6 = 3.141592653589793238462643; 36 37 //字符 38 char name = ‘国‘; 39 40 //字符串, String不是关键字,类 41 //String namea = "秦疆"; 42 43 //布尔值:是非 44 boolean flag = true; 45 //booLean fLag = false; 46 } 47 }
◆由于ava是强类型语言,所以要进行有些运算的时候的,需要用到类型转换。
取值范围小-------------------------------------------------------------------->取值范围大
byte,short, char-> int-> long-> float->double 小数的优先级大于整数。
◆运算中,不同类型的数据先转化为同一类型,然后进行运算。
当数据类型不一样时,将会发生数据类型转换。
自动类型转换(隐式) 右边赋值给左边,因此左边数据类型的取值范围(容量)比右边大,
才能构成自动类型转换1.特点:代码不需要进行特殊处理,自动完成。
2.规则:数据范围从小到大。
实例
1 package __数据类型转换_运算符_方法入门._1数据类型转换._1数据类型_自动转换; 2 ? 3 /** 4 * @author Admin 5 * @Classname AutomaticConversionDemo 6 * @Package __数据类型转换_运算符_方法入门.数据类型转换._1数据类型_自动转换 7 * @date 2020/03/29 18:34 8 * @Description TODO 9 * 数据类型转换_自动转换 10 */ 11 /* 12 当数据类型不一样时,将会发生数据类型转换。 13 自动类型转换(隐式) 14 右边赋值给左边,因此左边数据类型的取值范围比右边大,才能构成自动类型转换 15 1.特点:代码不需要进行特殊处理,自动完成。 16 2.规则:数据范围从小到大。 17 ? 18 强制类型转换(显式) 19 */ 20 public class AutomaticConversionDemo { 21 public static void main(String[] args) { 22 System.out.println("整数int类型:"+1024);//这就是一个整数,默认就是int类型 23 System.out.println("浮点数double类型"+3.14);//这就是一个浮点数,默认就是double类型 24 ? 25 //左边是1ong类型,右边是默认的int类型,左右不一样,左边取值范围比右边大 26 //一个等号代表赋值,将右侧的int常量,交给左侧的1ong变量进行存储 27 //int-->1ong,符合了数据范围从小到大的要求 28 //这一行代码发生了自动类型转换。 29 long num1 = 100; 30 System.out.println(num1);//100 31 ? 32 //左边是double类型,右边是float类型,左右不一样,左边取值范围比右边大 33 //float-->double,符合从小到大的规则 34 //也发生了自动类型转换 35 double num2 = 2.5F; 36 System.out.println(num2);//2.5 37 ? 38 //左边是float类型,右边是long类型,左右不一样,左边取值范围比右边大 39 //1ong-->float,范围是float更大一些,符合从小到大的规则 40 //也发生了自动类型转换 41 float num3 = 30L; 42 System.out.println(num3); 43 ? 44 } 45 }
当数据类型不一样(高容量转换到低容量)时,将会发生数据类型转换。 右边赋值给左边,但是左边的数据类型的取值范围(容量)比右边小, 可以进行强制类型转换,达到数据存储的结果
1.特点:代码需要进行特殊的格式处理,不能自动完成。 ?
2.格式:范围小的类型 范围小的变量名 =(范围小的类型)原本范围大的数据;
实例
1 package __数据类型转换_运算符_方法入门._1数据类型转换._2数据类型转换_强制转换; 2 ? 3 /** 4 * @author Admin 5 * @Classname CoercionDemo 6 * @Package __数据类型转换_运算符_方法入门.数据类型转换._2数据类型转换_强制转换 7 * @date 2020/03/29 18:52 8 * @Description TODO 9 */ 10 /* 11 强制类型转换(显式) 12 右边赋值给左边,但是左边的数据类型的取值范围比右边小,可以进行强制类型转换,达到数据存储的结果 13 1.特点:代码需要进行特殊的格式处理,不能自动完成。 14 2.格式:范围小的类型范围小的变量名=(范围小的类型)原本范围大的数据; 15 */ 16 public class CoercionDemo { 17 public static void main(String[] args) { 18 //左边是int类型,右边是1ong类型,不一样 19 //long-->int,不是从小到大 20 //不能发生自动类型转换! 21 //格式:范围小的类型 范围小的变量名=(范围小的类型)原本范围大的数据; 22 int num = (int) 100L; 23 System.out.println(num); 24 ? 25 } 26 }
注意事项:
1.强制类型转换一般不推荐使用,因为有可能发生【浮点数】精度损失、【整数】数据溢出。 2.byte/short/char这三种类型都可以发生数学运算,例如“加法“。
3.byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。 4.boolean类型不能发生数据类型转换
实例:
1 package __数据类型转换_运算符_方法入门._1数据类型转换._2数据类型转换_强制转换; 2 ? 3 /** 4 * @author Admin 5 * @Classname CoercionDemo 6 * @Package __数据类型转换_运算符_方法入门.数据类型转换._2数据类型转换_强制转换 7 * @date 2020/03/29 18:52 8 * @Description TODO 9 */ 10 /* 11 强制类型转换(显式) 12 注意事项: 13 1.强制类型转换一般不推荐使用,因为有可能发生【浮点数】精度损失、【整数】数据溢出。 14 2.byte/short/char这三种类型都可以发生数学运算,例如加法“。 15 3.byte/short/char这三种类型在运算的时候,都会被首先提升成为int类型,然后再计算。 16 4.boolean类型不能发生数据类型转换 17 */ 18 public class CoercionErroDemo { 19 public static void main(String[] args) { 20 //1ong强制转换成为int类型 21 int num1 = (int) 6000000000L;//数据溢出异常 22 System.out.println(num1);//1705032704【17个亿】 23 ? 24 //double-->int,强制类型转换 25 int num2 = (int) 3.9;//精度损失 26 System.out.println(num2);//3,这并不是四舍五入,所有的小数位都会被舍弃掉 27 ? 28 char c = ‘A‘;//这是一个字符型变量,里面是大写字母A 29 System.out.println(c + 1);//66,也就是大写字母A被当做65进行处理 30 //计算机的底层会用一个数字(二进制)来代表字符A,就是65T 31 //一旦char类型进行了数学运算,那么字符就会按照一定的规则翻译成为一个数字 32 ? 33 byte num4 =40;//注意!右侧的数值大小不能超过左侧的类型范围 34 byte num5=50; 35 //byte+byte-->int+int-->int 36 int result1=num4 +num5; 37 System.out.println(result1);//90 38 ? 39 short num6=60; 40 //byte+short-->int +int-->int 41 //int强制转换为short:注意必须保证逻辑上真实大小本来就没有超过short范围,否则会发生数据溢出 42 short result2=(short) (num4 +num6); 43 System.out.println(result2);//100 44 ? 45 } 46 }
◆变量是什么:就是可以变化的量!
◆Java是一种强类型语言,每个变量都必须声明其类型
◆Java变量是程序中最基本的存储单元,其要素包括变量名,变量类型和作用域。
1 type varName[=value][{,varName[=value]}]; 2 /* 3 type:数据类型 4 varName;变量名 5 [{,varName[=value]}]:不建议使用 6 数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量 7 []表示里面的内容可以省略 8 */ 9 int a = 1,b = 2,c = 3;//不建议使用
◆注意事项:
●每个变量都有类型,类型可以是基本类型也可以是引用类型。
●变量名必须是合法的标识符。
●变量声明是一条完整的语句,因此每一个声明都必须以分号结束。
◆类变量 【从属于类,直接可以通过类名调用使用】
◆实例变量【从属于对象,需要new一个对象,通过对象调用】 如果不初始化,那么默认值:
byte =(byte)0;
short = (short)0;
int = 0;
long = 0L;
float = 0.0F
double = 0.0d;
boolean = false;
char = ‘/uoooo除了基本类型,引用类型数据默认是:null
◆局部变量【仅在方法中有效,通过方法调用使用】 局部变量必须声明和初始化值【赋值】,才可以使用。
1 package __数据类型转换_运算符_方法入门._1数据类型转换._3变量的作用域; 2 ? 3 /** 4 * @Author Admin 5 * @Classname Variable 6 * @Package __数据类型转换_运算符_方法入门._1数据类型转换._3变量的作用域 7 * @GreatDate 2020/04/27 08:27:01 8 * @Description TODO 变量的作用域 9 */ 10 public class Variable { 11 static int allClicks = 0;//类变量,从属于类 12 String str = "hello world";//实例变量,从属于对象 13 public void method() { 14 int i = 0;//局部变量 仅在方法中有效 15 } 16 public static void main(String[] args) { 17 Variable v = new Variable(); 18 System.out.println(Variable.allClicks); 19 System.out.println("---------------------"); 20 System.out.println(v.str); 21 System.out.println("---------------------"); 22 v.method(); 23 } 24 }
●变量声明是一条完整的语句,因此每一个声明都必须以分号结束
◆常量(Constant):初始化(initialize)【赋值】后不能再改变值!不会变动的值。
◆所谓常量:可以理解成一种特殊的变量,它的值被设定后,在程序运行过程中不允许被改变。
final 常量名 = 值;
final double PI = 3.14;
◆常量名:一般使用大写字符,多个单词使用下划线"__"分割。
拓展:
final
是修饰符,和public
,void
一样,修饰符之间的不存在先后使用顺序。
1 static final double PI = 3.14; 2 final static double PI = 3.14;//都是一样的,不过写变量时,一般把final写在static之前.
变量的命名规范所有变量、方法、类名:见名知意
类成员变量:首字母小写和驼峰原则:monthSalary
局部变量:首字母小写和驼峰原则
常量:大写字母和下划线:MAX VALUE
类名:首字母大写和驼峰原则:Man, GoodMan
方法名:首字母小写和驼峰原则:run(), runRun()
◆Java语言支持如下运算符:
【四则运算(一元运算符)+模运算+自增自减运算】
1package __数据类型转换_运算符_方法入门._2运算符._1四则运算符_取模运算符;
符号 | 对应名称 |
---|---|
+ | 加号 |
- | 减号 |
* | 乘号 |
/ | 除号 |
% | 模运算或者取余 |
2 3 /** 4 * @author Admin 5 * @Classname ArithmeticDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._1四则运算符 7 * @date 2020/03/29 20:34 8 * @Description TODO 9 */ 10 public class ArithmeticDemo { 11 //四则运算符(二元运算符,算术运算符) 12 public static void main(String[] args) { 13 //两个常量之间可以进行数学运算 14 System.out.println(20 + 30); 15 //两个变量之间也可以进行数学运算 16 int a = 20; 17 int b = 30; 18 System.out.println(a - b);//-10 19 //变量和常量之间可以混合使用 20 System.out.println(a * 10);//200 21 int x = 10; 22 int y = 3; 23 int result1 = x / y; 24 System.out.println(result1);//3 25 int result2 = x % y; 26 System.out.println(result2);//余数,模,1 27 //int +double-->double+double-->double 28 double result3 = x + 2.5; 29 System.out.println(result3);//12.5 30 //-------------------------------------------- 31 System.out.println("----------------------"); 32 //运算中隐含的自动类转换 33 long l = 1234541541454L; 34 int i = 123; 35 short s = 10; 36 byte e = 8; 37 System.out.println(l + i + s + e);//1234541541595 long 38 System.out.println(i + s + e);//141 int 39 System.out.println(s + e);//18 int 40 //System.out.println((String)(e + s));//18 int 41 42 } 43 }
注意:
取值范围小-------------------------------------------------------------------->取值范围大
byte,short, char-> int-> long-> float->double
1、如果有范围的类型大的变量类型,那么整个运算会自动转换提升到取值范围大数据类型。
2、
byte,short, char
会自动转换成int,就算里面没有int类型。
1 package __数据类型转换_运算符_方法入门._2运算符._1四则运算符_取模运算符._加号的多种用法; 2 ? 3 /** 4 * @author Admin 5 * @Classname PlusDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._1四则运算符._加号的多种用法 7 * @date 2020/03/29 20:50 8 * @Description TODO 9 */ 10 /* 11 + 可以使用拼接字符串 12 */ 13 public class PlusDemo { 14 public static void main(String[] args) { 15 //字符串类型的变量基本使用 16 //数据类型 变量名称 = 数据值; 17 18 String str1 = "Hello"; 19 System.out.println(str1);//Hello 20 System.out.println("Hello" + "World");//HelloWorld 21 String str2 = "Java"; 22 //String+int-->String 23 System.out.println(str2 + 20);//Java20 24 //优先级问题 25 //String+int+int 26 //String +int 27 //String 28 System.out.println(str2 + 20 + 30);//Java2030 29 System.out.println(str2 + (28 + 30));//Java58 30 } 31 }
?
符号 | 对应名称 |
---|---|
++ | 自增运算符 |
-- | 自减运算符 |
1 package __数据类型转换_运算符_方法入门._2运算符._2自增自减运算符._1自增运算符; 2 3 /** 4 * @author Admin 5 * @Classname IncreaseDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._2自增自减运算符 7 * @date 2020/03/29 21:10 8 * @Description TODO 9 * 自增运算符 10 */ 11 public class IncreaseOperatorDemo { 12 public static void main(String[] args) { 13 int num1 = 10; 14 System.out.println(num1);//10 15 //单独使用时,前++和后++,都是表示加1 16 ++num1;//单独使用,前++ 17 System.out.println(num1);//11 18 num1++;//单独使用,后++ 19 System.out.println(num1);//12 20 System.out.println("================"); 21 //与打印操作混合的时候 22 int num2 = 20; 23 //混合使用,先++,变量立刻马上变成21,然后打印结果21 24 //num2 =(num2 + 1);执行完这行代码后,先给num2自增(+1),再赋值num2 25 System.out.println(++num2);//21 26 System.out.println(num2);//21 27 System.out.println("================"); 28 int num3 = 30; 29 //混合使用,后++,首先使用变量本来的30,然后再让变量+1得到31 30 //(num3 = num3) + 1执行完这行代码后,先减num3赋值num3,再自增(+1) 31 System.out.println(num3++);//30 32 System.out.println(num3);//31 33 } 34 }
1 package __数据类型转换_运算符_方法入门._2运算符._2自减自减运算符._2自减运算符; 2 ? 3 /** 4 * @author Admin 5 * @Classname DecreaseDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._2自减自减运算符.自减运算 7 * @date 2020/03/29 21:18 8 * @Description TODO 9 * 自减运算 10 */ 11 public class DecreaseOperatorDemo { 12 public static void main(String[] args) { 13 int num1 = 10; 14 System.out.println(num1);//10 15 //单独使用时,前--和后--,都是表示减1 16 --num1;//单独使用,前-- 17 System.out.println(num1);//9 18 num1--;//单独使用,后-- 19 System.out.println(num1);//8 20 System.out.println("================"); 21 int num4 = 40; 22 //和赋值操作混合 23 int result1=--num4; 24 //混合使用,前--,变量立刻马上-1变成39,然后将结果39交给result1变量 25 /*num4 = (num4 - 1);执行完这行代码后, 26 先给num4自减(-1),再赋值num4,再赋值result1 27 */ 28 System.out.println(result1);//39 29 System.out.println(num4);//39 30 System.out.println("================"); 31 int num5=50; 32 //混合使用,后--,首先把本来的数字50交给result2,然后我自己再-1变成49 33 /*(num5 = num5) - 1执行完这行代码后, 34 先给num5赋值,再赋值result2,再自减(-1) 35 */ 36 int result2=num5--; 37 System.out.println(result2);//50 38 System.out.println(num5);//49 39 System.out.println("================"); 40 } 41 } 42 ?
很多运算需要使用工具类来操作实现:如幂运算,使用了Math工具类
package __数据类型转换_运算符_方法入门._2运算符._8幂运算演示;
?
/**
* @author Admin
* @Classname DemoMathPow
* @Package __数据类型转换_运算符_方法入门._2运算符._8幂运算演示
* @GreatDate 2020/05/03 21:24:36
* @Description TODO 演示幂运算
*/
public class DemoMathPow {
public static void main(String[] args) {
//幂运算 2^3 2*2*2=8
double pow = Math.pow(2, 3);
System.out.println(pow);
}
}
符号 | 对应名称 |
---|---|
= | 赋值,将右边的值交给左边进行运行 |
符号 | 对应名称 |
---|---|
> | 大于 |
< | 小于 |
== | 等于 |
!= | 不等于 |
>= | 大于等于 |
<= | 小于等于 |
instanceof | 用于判断前面的对象是否是后面的类,或者其子类、实现类的实例。如果是返回true,否则返回false。 |
1 package __数据类型转换_运算符_方法入门._2运算符._4比较_关系运算符; 2 3 /** 4 * @author Admin 5 * @Classname CompareDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._4比较运算符 7 * @date 2020/03/29 22:08 8 * @Description TODO 9 * 比较运算符 10 */ 11 public class CompareOperatorDemo { 12 public static void main(String[] args) { 13 14 System.out.println(10>5);//true 15 int num1=10; 16 int num2=12; 17 System.out.println(num1<num2);//true 18 System.out.println(num2>=100);//false 19 System.out.println(num2<=100);//true 20 System.out.println(num2<=12);//true 21 System.out.println("==============="); 22 System.out.println(10==10);//true 23 System.out.println(20!=25);//true 24 System.out.println(20!=20);//false 25 int x=2; 26 //System.out.println(1<x<3);//错误写法!编译报错!不能连着写。 27 } 28 }
符号 | 对应名称 |
---|---|
&& | 与(逻辑与、短路与) |
|| | 或(逻辑或、短路或) |
! | 非 |
1 package __数据类型转换_运算符_方法入门._2运算符._5逻辑运算符._1短路与$短路或逻辑运算符; 2 3 /** 4 * @author Admin 5 * @Classname LogicDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._5逻辑运算符 7 * @date 2020/03/29 22:32 8 * @Description TODO 9 */ 10 //逻辑运算符短路与&&和短路或|| 11 public class LogicalOperatorsDemo { 12 public static void main(String[] args) { 13 //短路与&& 只要第一个表达式的值是false的, 14 // 第二个表达式的值,就不需要进行运算了 15 int j = 2; 16 System.out.println( j== 1 && j++ ==2 ); 17 //因为j==1返回false,所以右边的j++就没有执行了, 18 // 所以j的值,还是2 19 System.out.println(j); 20 21 System.out.println("------------------------------"); 22 //短路或|| 只要第一个表达式的值是true的, 23 // 第二个表达式的值,就不需要进行运算了 24 int i = 2; 25 System.out.println( i== 2 || i++ ==2 ); 26 //因为j==2返回true,所以右边的j++就没有执行了, 27 // 所以i的值,还是2 28 System.out.println(i); 29 30 System.out.println("------------------------------"); 31 //取反! 32 //真变为假 33 //假变为真 34 boolean b = true; 35 System.out.println(b); //输出true 36 System.out.println(!b);//输出false 37 38 System.out.println("------------------------------"); 39 //异或^ 40 //不同,返回真 41 //相同,返回假 42 boolean a = true; 43 boolean c = false; 44 45 System.out.println(a^c); //不同返回真 46 System.out.println(a^!c); //相同返回假 47 } 48 }
A = 0011 1100
B = 0000 1101
A&B = 0000 1100 : A和B每一位都进行&与运算,A和B的位数都是1才输出1,否则否输出0
A|B = 0011 1101 : A和B每一位都进行|或运算,A和B的位数都是0才输出0,否则否输出1
A^B = 0011 0001 : A和B每一位都进行^异或运算,A和B的位数相同才输出0,否则否输出1
~B = 1111 0010 :B每一位都进行~取反运算, 位数是0取反为1,位数是1取反为0
练习:快速计算2x8=16 2x8 = 16
"<<": 相当于*2 位左移运算符 ">>": 相当于/2 位右移运算符
如:2<<3 = 16 2的位数0000 0010 -- 1向左移动三位 效率提高!!!
0000 0000 -> 0
0000 0001 -> 1
0000 0010 -> 2
0000 0011 -> 3
0000 0100 -> 4
0000 0101 -> 5
0000 0110 -> 6
0000 0111 -> 7
0000 1000 -> 8
0001 0000 -> 16
0010 0000 -> 32
0100 0000 -> 64
备注:箭头朝那边,就是什么运算符,如:<< 箭头朝左,所以是左位移运算
语法格式: 数据类型 变量名称 = 条件判断 ? 表达式A : 表达式B;
判断a>b是否成立,如果成立将a的值质值给max; 如果不成立将b的值赋值给max。 二者选其一
符号 | 解析 |
---|---|
a+=b | a= a + b |
a-=b | a = a - b |
a*=b | a = a * b |
a/=b | a = a / b |
1 package __数据类型转换_运算符_方法入门._2运算符._3赋值运算翻; 2 ? 3 /** 4 * @author Admin 5 * @Classname AssignmentDemo 6 * @Package __数据类型转换_运算符_方法入门._2运算符._3赋值运算翻 7 * @date 2020/03/29 21:54 8 * @Description TODO 9 * 复合赋值运算符 10 */ 11 public class AssignmentDemo { 12 public static void main(String[] args) { 13 int a = 10; 14 //按照公式进行翻译:a=a+5 15 //a=10+5; 16 //a=15; 17 //a本来是10,现在重新赋值得到15 18 a += 5; 19 System.out.println(a);//15 20 ? 21 int x = 10; 22 //x=×%3; 23 //x=10%3; 24 //x=1; 25 //x本来是10,现在重新赋值得到1 26 x %= 3; 27 System.out.println(x);//1 28 } 29 }
使用()可以提升优先级。
◆为了更好地组织类, Java 提供了包机制,用于区别类名的命名空间。 ◆包语句的语法格式为:
[]:表示可选择的
package pkg1[.pkg2[.pkg3...]];
◆一般利用公司域名倒置作为包名;如:www.elvin.org,使用倒置:org.elvin.www
◆为了能够使用某-个包的成员,我们需要在Java程序中明确导入该包。 使用"import"语句可完成此功能:
import package1[. package...].(classname|*);
◆javadoc命令是用来生成自己API文档的
◆参数信息
◆@author作者名
◆@version版本号
◆@since 自然号,指明需要最早使用的jdk版本
◆@param 参数名
◆@return 返回值情况
◆@throws异常抛出情况
DOS命令: javadoc -encoding UTF-8 -charset UTF-8 DemoDoc.java
1. 第一步 选中要生成api文档的项目、模块、类–>点击tools–>打开Generate javaDoc…
2. 第二步 设置路径和编码格式(-encoding utf-8 -charset utf-8)
以上选择生成的是当前类文件的API文档,如果需要生成整个项目,整个模块或者当前文件需要勾选"Custom scope",里面有很多可以选择生成文档的范围:
Custom scope | 自定义范围 |
---|---|
All Places | 所有地方(整个工作空间) |
Project Files | 项目(工程)文件 |
Scratches and Consoles | 划痕和控制台 |
Recently Viewed Files | 最近查看的文件 |
Recently Changed Files | 最近更改的文件 |
Open Files | 打开文件 |
Module ‘XxxXxx‘ | 模块“XxxXxx” |
Current File | 当前文件 |
Class Hierarchy | 类层次结构 |
Data Sources | 数据源 |
---|---|
Context Data Sources | 上下文数据源 |
Connected Data Sources | 连接的数据源 |
All Data Sources | 所有数据源 |
如果出现报错–Error running ‘Javadoc’: Cannot generate JavaDoc - JDK path is not specified or invalid 解决办法:
添加自己电脑的jdk–默认C盘下Java目录
测试
原文:https://www.cnblogs.com/elvin-j-x/p/12825265.html