上周进行了第二周的学习,第一感觉是和平时使用的js语法很像,有些具体的语法略有不同。继续加油吧~
首先是在学习JAVA基础语法之前的知识准备,这些会在之后的使用中反复出现~
一.注释
注释与js写法相同 个人习惯使用ctrl+/
public class NoteDemo {
public static void main(String[] args) {
//注释的第一种写法(单行)
/*
多行
注释不影响程序执行(编译的class文件不会编译注释的内容)
快捷键:
①Ctrl+/ 单行注释
②Ctrl+shift+/ 多行注释
*/
/**
文档注释
文档注释的内容可以提取到一个程序说明文档中
*/
}
}
二.字面量
计算机是处理数据的,字面量是用来告诉程序员:数据在程序中的书写格式。
public class literDemo {
public static void main(String[] args) {
//1.整数
System.out.println(666);
//2.小数
System.out.println(66.6);
//3.字符
System.out.println('a');
System.out.println('0');
System.out.println('中');
System.out.println(' ');//空字符至少有一个空格占位
System.out.println('中');
System.out.println('\n');//特殊字符 \n代表换行 \t代表一个tab
System.out.println('国');
System.out.println('\t');
//4.字符串->双引号包裹
System.out.println("我爱你中国");
//5.布尔值
System.out.println(true);
System.out.println(false);
}
}
三.变量
用来记录程序要处理的数据。
①定义格式:数据类型 变量名称=数据
②数据类型:限制盒子中只能存储某种形式(int(整数))
③变量名称:首字母小写
④=:赋值
public class variableDemo {
public static void main(String[] args) {
//1.定义一个整形变量记住一个整数
int age=18;
double score=3.14;
System.out.println(age);
System.out.println(score);
//2.变量里装的内容可以被替换
int age2=18;
System.out.println(age2);
age2+=1;
System.out.println(age2);
}
}
优点:变量可以让编写更灵活,更容易维护
关键字:
有特殊作用的词:public,class,int,double...
标识符:
名字->写程序时会起到的名字,类名,变量名等 //标志符的要求:
①以数字,字母,下划线,美元符组成
②强制要求:不能以数字开头,不能用关键字作为名字,且区分大小写
标志符的建议:
①变量名称:满足要求,全英文,有意义,首字母小写,驼峰命名(helloWorld)
②类名称:满足要求,全英文,有意义,首字母小写,驼峰命名(HelloWorld)
注意事项:
①必须先声明后再使用
②变量是什么类型 就声明什么类型 否则报错
③变量是从开始定义 到"}"之间有效的;且在同一个范围内,定义多个变量时,名称不能重复
④定义变量时可以没有初始值,但是使用时必须有,否则报错
接下来是JAVA基础语法部分~
四.二进制
由于计算机只有0,1,逢2进1 例:0->0,1->1,2->10,3->11,4->100
注:
①计算机中表示数据的最小存储单元是字节(byte,简称B,由8个二进制位组成)
②每个二进制位称为位(bit,简称b),1B=8b
③Java中也支持书写其他进制,但是有前缀要求:
④二进制:0B或0b开头,八进制:0,十六进制:0X或0x
其他数据形式该如何存储:
①字符:ASCLL码存储(A为65,a为97)
public class variableDemo {
public static void main(String[] args) {
System.out.println('a'+10);//107
System.out.println(0141);//97,转换为8进制
}
}
②图片:图片由像素点组成,每个像素点由0~255*255*255表示颜色
③声音:波形图->坐标,再把坐标存储(100,011)
④视频:图片+声音混合
计算机的数据单位:
1B=8bit
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB
五.数据类型
①byte short int long 类型
public class variableDemo2 {
public static void main(String[] args) {
byte a=127;//-127~127
//byte a=128 越界
short s=13244;
//short s2=93244; 越界
int i=422424;//默认
//注意:随便写一个整型字面量默认是int类型,422442444444444虽然没超过long的范围,但是超过了int本身的范围
//如果希望随便写一个字面量默认是long类型的,需要在后面加上l/L
}
}
②float double 类型
public class variableDemo2 {
public static void main(String[] args) {
//注:随便写小数字面量,默认是double,如果希望小数是float,后面加上F/f
float f=3.14F;
double d=56.45;
}
}
③char 字符类型
public class variableDemo2 {
public static void main(String[] args) {
char ch='a';
char ch2='中';
}
}
④boolean 类型
public class variableDemo2 {
public static void main(String[] args) {
boolean flag=true;
boolean flag2=false;
}
}
⑤拓展一种使用类型
public class variableDemo2 {
public static void main(String[] args) {
//String类型->字符串类型
String name='张三'
}
}
六.数据类型的转化
①自动类型转化:类型范围小的可以直接赋值给类型范围大的变量
public class variableDemo2 {
public static void main(String[] args) {
byte a=12;
int b=a;
System.out.println(b);//12
}
}
②自表达式的自动类型转化:表达式中范围小的可以转化为范围大的再运算
③强制类型转化:大范围强制转化为小范围
public class variableDemo2 {
public static void main(String[] args) {
//数据类型 变量2=(数据类型)变量1
int a=128;//例:若byte强制转化为大于127的数字,会造成数据溢出,丢失
byte b=(byte)a;
System.out.println(b);
//注:强制类型转换会造成数据溢出(丢失),浮点型强转整型,直接丢掉小数部分,保留整数返回
}
}
七.运算符
①基本运算符:
public class operatorDemo1 {
public static void main(String[] args) {
int a=6;
int b=5;
System.out.println(a+b);//加
System.out.println(a-b);//减
System.out.println(a*b);//乘
System.out.println(a/b);//除 不能整除向下取整,或者变成小数 或先1.0*a转换类型
System.out.println(a%b);//取余
//补:'+'可以作为字符串连接符(能算则算,不能则连)
String c="我爱你";
String d="中国";
System.out.println(c+d);//我爱你中国
System.out.println(a+c);//6我爱你
System.out.println(a+b+c);//11我爱你
System.out.println(d+a+b);//中国65
System.out.println(d+a+b+c);//中国65我爱你
System.out.println(a+d+b+c);//6中国5我爱你
}
}
②自增自减运算符(只能操作变量):
public class operatorDemo1 {
public static void main(String[] args) {
//自增自减运算(只能操作变量)
int a=6;
a++;//相当于a=a+1
//++a
System.out.println(a);//7
a--;//相当于a=a-1
//--a
System.out.println(a);//6
//注:如果不是单独使用,那么会有区别
int a=10;
int b=10;
int c=++a;//先加后用
int d=b++;//先用后加
System.out.println(c);//11
System.out.println(d);//10
}
}
③赋值运算符:
'=',给变量赋值(右给左赋值)
'+=',加后赋值,a+=b—>a=a+b;
'-=',减后赋值,a-=b—>a=a-b;
'*=',乘后赋值,a*=b—>a=a*b;
'/=',除后赋值,a/=b—>a=a/b;
'%=',取余后赋值,a%=b—>a=a%b;
赋值时会把类型强制转化为'='前面数据的类型
④关系运算符:
>,<,>=,<=,==,!=
比较两个变量的关系,符合返回true,否则返回false
⑤逻辑运算符:
&:逻辑与,一假即假,都真才真
|:逻辑或,一真即真,都假才假
!:逻辑非,true与false相互取反
^:逻辑异或,前后真假性相同取false,前后真假性不同取true
&&:短路与,和逻辑与结果一样,过程不同,左边为false则右边不执行
||:短路或,和逻辑或结果一样,过程不同,左边为true则右边不执行
⑥三元运算符:
格式:条件表达式?值1:值2
先判断条件表达式,为true执行值1,为false执行值2