202105小白训练营-day02 java基础

Posted 长安紫薯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了202105小白训练营-day02 java基础相关的知识,希望对你有一定的参考价值。

后端开发工程师

市场最具竞争力,专业技能,随着软件技术成熟,时代发展,软件工程师学习核心重点发生变化
1)早期程序员20年前,学习重点五笔字型(练习打字120),网络建网,语言入门c,vb
2)早期程序员10年前,聊QQ,播客,基础是语言vb,c#,java,框架:ejb/struts1/struts2/spring3.x/hibernate 旧三大框架(好,事半功倍,安全,性能;坏,不能洞察里面 到底干嘛了,不透彻)开发者首先要解决客户的问题(业务),把东西他先能用先。之后再去搞清底层原理。
3)现今程序员,互联网架构nginx+redis+mycat+docker,天生就可以做大型项目
学习培优重点,不在java基础,不在javaweb网站,在框架新三大框架 springmvc+spring5.x+mybatis,互联网架构:分布式、高并发、高可用,海量数据(大数据),架构
语言:盖茅草屋;(初级程序员4k)框架:5层楼;(中级程序员8k)架构:迪拜大厦;(零基础10k,工作过2年15k,工作3年18k,工作4年30k)
最终目标:走向架构师。

创建java项目步骤

思考怎么实现:开发步骤
1)创建java工程
2)创建包
3)创建类
4)创建main方法
5)写代码,打印信息到控制台
6)运行

快捷方式

main两种:
1)创建类时可以指定它的模板 eclipse
2)快捷键

package cn.tedu.hello;

public class Hello {
	//eclipse定义一些快捷缩写: main ALT+/(预定义)死记提高开发效率
	public static void main(String[] args) {
		//打印 syso ALT+/,Ctrl+Z回退
		System.out.println("欢迎大家来学习java培优大数据课程");
		System.out.println("Hello");
		
		//运行java代码也有快捷方式,上面的播放按钮它记录的是最后一次的执行方式
		//第一次使用鼠标右键,之后代码改变,就可以直接运行快捷键按钮
	}

}

关键字

在java语言中有一些特定含义单词,而这些单词不允许开发者自己去使用。这些单词就称为关键字。
java中提供50+个关键字。最高版本1.16(16),主流1.8(8)
每个关键字都有其特殊含义,有其特定的语法

在这里插入图片描述

标识符

关键字是java使用,不让开发者去使用;标识符是给开发者使用的,开发者可以自己定义,自己使用。

变量

变化的量,定义一个内容,内容可以发生改变

常量

一旦定义好,不允许改变,不是一个变化的量

需求:
1)数学计算,操作符号,操作数

package cn.tedu.base; //包路径

//定义测试类Test,变量和常量
public class TestVar {
	// 必须使用快捷方式,提高开发速度
	public static void main(String[] args) {
		// 定义变量
		// 定义整数,实现加法,a+b
		int a = 10; // 定义一个整型int的变量a,给a赋值10
		int b = 20; // 定义一个变量b,赋值20
		System.out.println(a + b); // 先获取变量的值,然后累加,最后打印
	}
}
package cn.tedu.base; //包路径

//定义测试类Test,变量和常量
public class TestVar {
	// 必须使用快捷方式,提高开发速度
	public static void main(String[] args) {
		// 定义变量
		// 定义整数,实现加法,a+b
		int a = 10; // 定义一个整型int的变量a,给a赋值10
		int b = 20; // 定义一个变量b,赋值20
		System.out.println(a+b); // 先获取变量的值,然后累加,最后打印
		
		//Duplicate local variable a 局部变量,在方法中定义变量
		//在同一个方法中,一个局部变量的名称不能声明两次
		a = 20;	// 不能再次定义,但可以再次赋值,覆盖原有值,变量特点。
		a = 30;	// 变量可以n次赋值
		System.out.println(a+b);
		
		b = 30;
		System.out.println(a+b);
		
		//常量 final修饰后,它变量就变成常量
		final String sysName = "京淘电商平台";  //定义一个字符串变量
		//The final local variable sysName cannot be assigned.
		//final修饰局部变量sysName不能再次被设置值
		//特点:常量只赋值一次,不能再次赋值
		//It must be blank and not using a compound assignment
		//sysName = "京淘";
		System.out.println(sysName);
		
		//习惯常量全大写
		final float PI = 3.1415926f; //常量固定死的值,一旦第一次赋值,不允许修改
		System.out.println("圆周率:" + PI);  //字符串拼接
		//工程名称要求比较松支持-,但是变量常量名称不允许使用-
		final String SYS_NAME = "京淘电商平台";
		System.out.println("系统名称:" + SYS_NAME);
	}
}




运算符

在这里插入图片描述

加减乘除

package cn.tedu.base;

//数学运算:加+、减-、乘*、整除/
public class TestArith {
	public static void main(String[] args) {
		int x = 10;
		int y = 5;
		System.out.println(x+y);	//15
		//表达式计算,从左到右执行
		//字符串和其他内容拼接优先
		System.out.println("x+y="+x+y);	//x+y=105
		//通过小括号改变计算优先级
		System.out.println("x+y="+(x+y)); //x+y=15
		
		System.out.println("x-y="+(x-y));
		System.out.println("x*y="+(x*y));
		System.out.println("x/y="+(x/y));
	}
}

余数

package cn.tedu.base;

//计算机不需要数学好,取余 %
//奇数偶数判断:对2进行取余,余数0偶数,余数1奇数
public class TestMod {
	public static void main(String[] args) {
		int num = 9;
		System.out.println(num%2);  //数字对2进行取余
	}
}

自增、自减

package cn.tedu.base;

//运算符:自增++、自减--,针对整数
public class TestSelf {
	public static void main(String[] args) {
		int n = 0;
		n++;	//n = n+1;
		++n;	//n = n+1;
		System.out.println(n);
		
		int a = 10;
		//下面的值在计算时和++的前后有关
		System.out.println(a++);  //a=11,10,先打后加
		System.out.println(++a);  //a=12,12,先加后打
		
		System.out.println(a--);	//a=11,12,先打后减
		System.out.println(--a);	//a=10,10,先减后打
	}
}

相等、不等、取反

package cn.tedu.base;

//比较运算符 ==、!=、>=、<=。。
public class TestCompare {
	public static void main(String[] args) {
		int a = 10;
		int b = 100;
		System.out.println( a=b );	//赋值语句 100
		//比较结果是一个布尔值,true,false
		System.out.println( a==b );	//true,a值被改变,相等
		
		boolean bn = true;
		System.out.println( !bn ); //!取反,false
		System.out.println( a!=b );// false
	}
	
}

与或非

package cn.tedu.base;

//逻辑运算符:&&与,||或,!非
public class TestLocal {
	public static void main(String[] args) {
		boolean b1 = true;
		boolean b2 = false;
		
		//与特点:两边的值都为true结果才为true
		System.out.println( b1&&b2 );
		//或特点:两边只要有一边为true结果就为true
		System.out.println( b1||b2 );
		//非特点:取反
		System.out.println( !b1 );
		
		//穷举
		System.out.println( true && true );
		System.out.println( true && false );
		System.out.println( false && true );
		System.out.println( false && false );
		
		System.out.println();//输出一个空行
		
		System.out.println( true || true);
		System.out.println( true || false);
		System.out.println( false || true);
		System.out.println( false || false);
	}
}

三元运算符,三目运算符

格式很固定:a1 ? a2 : a3
含义:a1是一个布尔表达式,结果为true时返回a2,结果为false时返回a3
a=10, b=20;
int c = a>b ?a : b; //20

package cn.tedu.base;

//三目表达式:a?b:c
public class TestVar3 {
	public static void main(String[] args) {
		//求两个值最大值
		int a=100;
		int b=20;
		int max= a>b ? a : b; //简洁写法
		System.out.println(max);
		
		//求三个值的最大值
		int x=10;
		int y=20;
		int z=30;
		//应用两次三目表达式,第一次求出xy中最大值
		//第二次把xy中的最大值和z比较,求出其中最大值
		int m = x>y ? x : y;
		m = m>z ? m : z;
		System.out.println("三个值中最大值为:" + m);
		
		int r = (x>y?x:y) > z ? (x>y?x:y) : z;
		System.out.println("三个值中最大值为:" + r);
	}
}



复合运算符

package cn.tedu.base;

//复合赋值运算符 +=、-=、*=、/=
public class TestEqu {
	public static void main(String[] args) {
		int a = 10;
		int b = 2;
		
		a+=b;  //a=a+b 等价,简化
		System.out.println(a); //12
		a-=b; System.out.println(a); //10
		a*=b; System.out.println(a); //20
		a/=b; System.out.println(a); //10
	}
}

小结

1)java基础语法
关键字:java语言中预定义好的单词,这个单词只允许java自身使用,不允许开发者去使用。固定。小写。开发工具eclipse/idea语法高亮。每个单词都有特殊含义。
2)关键字死记
3)运算符会使用

以上是关于202105小白训练营-day02 java基础的主要内容,如果未能解决你的问题,请参考以下文章

202105小白训练营-day01 开发环境配置

202105小白训练营-day04 流程控制

202105小白训练营-day05 异常+String

202105小白训练营-day03 数据结构

202106小白训练营day02-java基础语法

java小白训练营day02-基础语法:关键字+变量+常量+运算符