前言
初学java语言的小白,日常记录个人所学、所思、所感、所获。
请java语言行业的前辈们多多指教, 目前从事汽车制造行业。
属于零基础自学,愿未来自己感谢今天的选择和努力。加油!
一、四则运算和取模运算
2021、8、16更新
笔记:
1.除了学习四则运算符的使用外,重点记忆取模运算符:%
2.不同数据之间的运算,结果将会是数据范围大的类型
/*
运算符:进行特定操作的符号,例如符号:+
表达式:用运算符连起来的式子。例如:20+5,又例如a+b。
四则远算:
加:+
减:-
乘:*
除:/
取模(取余数):%
只有对于整数的除法来说,取模预算符才有余数的意义。
首先计算得到表达式的结果,然后再打印输出这个结果。
复习下小学一年级对的出发公式:
被除数/除数=商…余数
对于一个整数的表达式来说,除法用的是整除,整数除以整数,结果仍然是整数。只看商,不看余数。
注意事项:
1.一旦运算当中有不同类型的数据,那么结果将会是数据类型范围大的那种。
*/
public class Demo01Operator {
public static void main(String[] args) {
//两个常量之间可以进行数学运算
System.out.println(20+30);
//两个变量之间也可以进行数学运算
int a=20;
int b=30;
System.out.println(a-b);//-10
//变量和常量之间可以混合使用
System.out.println(a*10);//200
int x =10;
int y=3;
int result1 = x/y;
System.out.println(result1);//3
//取模
int result2 = x%y;
System.out.println(result2);//余数 模:1
//int+double-->double+double-->double
// 一旦运算当中有不同类型的数据,那么结果将会是数据类型范围大的那种。
double result3=x+2.5;
System.out.println(result3);
}
}
二、加号的多种运用
2021、8、16更新
笔记:
1.加号在编程当中有不同用法,最值得注意的是在字符串当中的连接作用。
2.字符串连接任意类型都会变成字符串。
/*
四则运算当中的加号"+"有常见的三种用法
1.对于数值,那就是加法。
例如:20+30,输出结果就是50.
2.对于字符char类型来说,在计算之前,char类型会被提升成为int类型,然后再计算。
查了内心字符和int类型数字之间的关系对照表,ASCII码表、Unicde码表。
例如:‘A’+0,输出结果就是65,char类型字符A被提升成为int类型65进行了计算
3.对于字符串String(首字母大写,并不是关键字)来说,加号代表字符串链接操作。
例如: String str1=“Hello”;
System.out.println(str1);//Hello
System.out.println(str1+“World”);//HelloWorld
【注意】:任何数据类型和字符串进行连接的时候,结果都会变成字符串
*/
public class Demo02Plus {
public static void main(String[] args) {
//字符串类型的变量的基本使用
//格式 数据类型 变量名称=数据值
String str1="Hello";
System.out.println(str1);//Hello
System.out.println(str1+"World");//HelloWorld
String str2="java";
//String+int-->String
//任何数据类型和字符串进行连接的时候,结果都会变成字符串
System.out.println(str2+20);//java20
//优先级问题
//String + int + int
//String + int
//String
System.out.println(str2+20+30);//java2030
//小括号当中数据最先执行
System.out.println(str2+(20+30));//java50
}
}
三、自增、自减运算
2021、8、17更新
笔记:
1、自增、自减运算符与其他操作混合使用,前++、后++有区别。
2、前++,先加后用。【牢记】
3、后++,先用后加。【牢记】
/*
自增运算符:++
自减运算符:–
含义:让一个变量涨一个数字1,或者让一个变量降一个数字1
使用格式:
写在变量名称之前,或者写在变量名称之后。例如++num,或者num++。
使用方式:
1、单独使用:不和其他任何操作混合,自己独立成为一个步骤。
2、混合使用:和其他操作混合,例如与赋值操作混合,或者与打印操作混合,等。
使用区别:
1.在单独使用的时候,前++和后++没有任何区别。也就是++num;和num++是完全一样的。
2.在混合使用的时候,有【重大区别】
A.如果是【前++】,【那么这个变量立刻马上+1,然后拿着结果进行使用。】 【先加后用】
B.如果是【后++】,【那么使用变量本来的数值,然后再让变量变量++。】 【先用后加】
注意事项:
只有变量才可以使用自增、自减运算符。常量不可发生改变,所以不能用。
*/
public class Demo03Operator {
public static void main(String[] args) {
int num1=10;
System.out.println(num1);//10
++num1;//单独使用,前++
System.out.println(num1);
num1++;//单独使用,后++
System.out.println(num1);//12
System.out.println("==========");
//与打印混合使用
int num2=20;
//混合使用,前++,立马+1,打印输出21
System.out.println(++num2);//21
System.out.println(num2);//21
System.out.println("==========");
//混合使用
int num3 =30;
//混合使用,后++,先使用本来的数值,然后再让变量+1,打印输出31
System.out.println(num3++);//30
System.out.println(num3);//31
System.out.println("==========");
//和赋值操作混合使用
int num4=40;
int result1=--num4;
//混合使用,前--,变量立刻马上-1变成39,然后再将结果39交给result1变量
System.out.println(result1);//39
System.out.println(num4);//39
System.out.println("==========");
//和赋值操作混合使用
int num5=50;
int result2=num5--;
//混合使用,后--,首先把本来的数值50交个result2,然后我自己再-1变成49
System.out.println(result2);//50
System.out.println(num5);//49
System.out.println("==========");
//混合运算
int x=10;
int y=20;
int result3=++x+y--;
System.out.println(result3);//31
System.out.println(x);//11
System.out.println(y);//19
// 只有变量才可以使用自增、自减运算符。常量不可发生改变,所以不能用。
// 30++//错误写法
}
}
四、赋值运算符
2021、8、17更新
笔记:
1."="在编程语句当中代表赋值,==才代表相等。
2.注意复合赋值运算符的使用
/*
赋值运算符分为
基本赋值运算符:就是一个等号"=",代表将右侧的数据交给左侧的变量。
int a = 30;
复合赋值运算符:
+= 代表 a += 3 相当于 a =a+3
-= 代表 b -= 4 相当于 b =b-4
*= 代表 c = 5 相当于 c =c5
/= 代表 d /= 6 相当于 d =d/6
%= 代表 e %= 7 相当于 e =e%7
注意事项:
1.只有变量才能使用赋值运算符,常量不能进行赋值
例:50=30;错误写法
2.复合赋值运算符其中隐含了一个强制类型转换
*/
public class Demo04Operator {
public static void main(String[] args) {
int a = 10;
a += 5;
//按照公式进行翻译:a = a+5
//a =10+5
//a =15
//a本来是10,现在重新赋值得到15
System.out.println(a);//15
System.out.println("=======");
int x=10;
//x = x%3;
//x=10%3;
//x=1;
//x本来是10,现在重新赋值得到1
x%=3;
System.out.println(x);//1
byte num = 30;
//num =num+5;
//num =byte + int;
//num = int +int ;
//num = int;
//num = (byte) int
num +=5;
System.out.println(num); //35
}
}
五、比较运算符
2021、8、18更新
笔记:
1.注意=在程序编译当中视为赋值,==才是相等。
2.比较运算符多次判断,不能连着写。
例:1<x<3【错误写法】
/*
比较运算符:
大于: >
小于: <
大于等于: >=
小于等于: <=
相等: == 【注意:两个等号是等于,一个等号是赋值】
不相等: !=
注意事项:
1.比较运算符的结果一定是个boolean值,成立就是true,不成立就是false。
2.比较运算符进行多次判断,不能连着写。
数学当中的写法,例:1<x<3
程序当中【不允许】这种写法
*/
public class Demo05Operator {
public static void main(String[] args) {
System.out.println(10>5);//true
int num1=10;
int num2=20;
System.out.println(num1<num2);//ture
System.out.println(num2>=100);//false
System.out.println(num2<=100);//true
System.out.println("=============");
System.out.println(10==10);//true
System.out.println(10!=10);//false
System.out.println(10!=20);//true
/*
比较运算符进行多次判断,不能连着写。
数学当中的写法,例:1<x<3
程序当中【不允许】这种写法
int x=2;
System.out.println(1<x<3);//错误写法,编译报错,不能连着写
*/
}
}
六、逻辑运算符
2021、8、18更新
笔记:
1.&&表示并且
2.||表示或者,其中|是确认键上方那个键
3.!表示取反
4.注意程序当中多个条件不能连着写。需要拆分然后用&&、||连接起来。
/*
与(并且) && 全都是true,才是true,否则就是flase
或(或者) || 全都是flase,才是false,否则就是ture
非(取反) ! 本来true,变成flase,本来flase,变成ture
与&&,或"||"具有短路效果,如果根据左边数据已经可以判断最终结果,那么右边代码将不再执行,从而节省一定的性能。
注意事项:
1.逻辑运算符只能用于boolean值。
2.与、或需要左右各自有一个boolean值。
例:3<6&&6<25–>true&&true
3.取反只要有位移一个布尔值即可。
例:!true
4.与、或两种运算符,如果有多个条件可以连着写
例如:条件A&&条件B&&条件C…
Tips:
对于1<x<3这种情况,应该拆分成为两个部分,然后使用运算符连接起来
1<x&&x<3
*/
public class Demo06Logic {
public static void main(String[] args) {
System.out.println(true&&false);//false
System.out.println(true||false);//true
//true&&true-->true
System.out.println(3<6&&6<25&&35<60);//true
System.out.println("=======");
System.out.println(false||false);//false
//!取反要作用一个整体需要加小括号将其括起来
//true&&false-->false
System.out.println(!false&&false);//false
//!(false&&false)-->!false-->true
System.out.println(!(false&&false));//true
System.out.println("======");
System.out.println(true);//true
System.out.println(!true);//false
System.out.println("======");
//与&&,或"||"具有短路效果,如果根据左边数据已经可以判断最终结果,那么右边代码将不再执行,从而节省一定的性能。
//短路
int a =10;
//false&&....短路
System.out.println(3>4&&++a<100);//false
System.out.println(a);//10
System.out.println("======");
//不短路
int b=10;
//ture||.....短路
System.out.println(3<4||++b<100);//true
System.out.println(b);//10
}
}
七、三元运算符
2021、8、18更新
笔记:
三元运算符与if语句有相通之处,着重记忆语句格式。
/*
一元运算符:只需要一个数据就可以进行操作的运算符。例如:取反 !、自增 +=、 自减 –
二元运算符:需要两个数据才能进行进行操作的运算符。例如:加法 +、赋值 =
三元运算符:需要三个数据才能进行进行操作的运算符
格式:
数据类型 变量名称 = 条件判断?表达式A:表达式B;
流程:
首先判断条件时候成立:
如果成立为true,那么将表达式A值赋值交给左侧变量。
如果不成立为false,那么将表达式B值赋值交给左侧变量。
二者选其一
注意事项:
1.必须同时保证表达式A和表达式B都符合左侧数据类型要求.
int result1=3>4?2.5:4;//错误写法 左边数据类型为int,右边条件A为double,条件B为int,报错。
2.三元运算符的结果必须被使用。
int max=a>b?a:b;//定义一个变量,使用三元运算结果
System.out.println(a>b?a:b);//打印输出三元运算结果
a>b?a:b//错误写法,三元运算符结果没被使用。
*/
public class Demo07Operator {
public static void main(String[] args) {
int a=10;
int b=20;
//数据类型 变量名称 = 条件判断?表达式A:表达式B;
int max=a>b?a:b;//最大变量,
//解读上一行代码
//定义一个变量名称为max,变量a大于变量b吗?成立便把变量a赋值交给max,不成立就把变量b赋值交给max。
System.out.println("最大值"+max);//最大值20
System.out.println(a>b?a:b);//简写 正确写法
}
}
心得体会
每一天都一点进步,感觉很开心。加油!明天会更好2021、8、16