JavaSE基础篇【1】——2022年6月1日

JavaSE基础篇【1】

2022年6月1日


第一部分 Java语言基础

1.1 Java主类结构

Java语言是面向对象的程序设计语言,Java程序的基本组成单元是类,类体中又包括属性与方法。

package Number;
public class First{
    static String s1="你好";
    public static void main(String[] args){
    String s2="Java";
    System.out.println(s1);
    System.out,println(s2);
    }
}                                                                                                                                                
  • 注:文件名必须和Java的类名相同,如上述应为First.java。
    ①包声明 package Number
    ②声明成员变量和局部变量,s1 是成员变量,s2 是局部变量
    ③编写主方法 main
    ④导入API类库 import

1.2 基本数据类型

Java的数据类型主要有以下三大类:

  • 数值型:包括整数类型(byte,short,int,long)和浮点类型(float,double)
  • 字符型
  • 布尔型
  1. 整数类型
    ①十进制:除了数字0,不能以0作为其他十进制数的开头
    ②八进制:必须以0开头,如0123(十进制83),-0123(十进制-83)
    ③十六进制:必须以0x或者0X开头,0x25(十进制37),0xb01e(十进制:45086)
    byte型:8位存储空间,取值范围为-128~127
    short型:16位存储空间,取值范围为-32768~32767
    int型:32位存储空间,取值范围为-2147483648~22147483647
    long型:64位存储空间,取值范围长度为2的64次方
package Number;
public class Number {
 public static void main(String[] args){
		byte mybyte=124;
		short myshort=32654;
		int myint=45784612;
		long mylong=46789451;
		long result=mybyte+myshort+myint+mylong;
		System.out.println("结果为:"+result);
		}
}
  1. 浮点类型
    有float型和double型,内存空间分别是2的32次方和64次方
  2. 字符类型
  • char型
		char word='d';
		char d1='\u2605';
		System.out.println("d在unicode表中的顺序是:"+(int)word);
		System.out.println("unicode表中的第23045位是:"+(char)p);
  • 转义字符
    \ddd:1~3位八进制数据所表示的字符,如\123
    \uxxxx:4为十六进制数据所表示的字符,如\u0052
    ':单引号字符
    \:反斜杠字符
    \t:垂直制表符,将光标移到下一个制表符的位置
    \r:回车
    \n:换行
    \b:退格
    \f:换页
  1. 布尔类型
    布尔类型也就是逻辑类型,通过关键词 boolean 来 定义布尔类型变量,只有 truefalse 两个值,分别代表真和假。
   boolean b=true;
   boolean b1,b2;
1.3 变量与常量
  1. 标识符和关键字
  • 标识符:一个名字,可以用来表示类名、变量名、方法名、数组名、文件名的有效字符序列。标识符不能是Java中保留的关键字。
  • 关键字:Java中已经被赋予一些特定意义的单词。
  1. 声明变量和常量
//声明变量
int age;
char char1='r';
//声明常量:final 数据类型 常量名称[=值]
final double PI=3.1415926;
final boolean BOOL=true;
  1. 变量的有效范围
  • 成员变量:在整个类中都有效
  • 局部变量:只在当前代码块中有效
    var:可以多次赋值
    val:只可以赋值一次
1.4 运算符
  1. 赋值运算符:=,如 " a=1 "
  2. 算术运算符:
  • +:加
  • -:减
  • *:乘
  • /:除
  • %:取余数
		float b1=45.56f;
		int b2=152;
		System.out.println("和为:"+(b1+b2));
		System.out.println("差为:"+(b1-b2));
		System.out.println("积为:"+(b1*b2));
		System.out.println("商为:"+(b1/b2));
  1. 自增和自减运算符
  • ++a(–a):在使用变量a之前,先使a的值加(减)1
  • a++(a–):在使用变量a之后,使a的值加(减)1
  1. 比较运算符(输出为逻辑变量)
    “>”:比较左方是否大于右方
    “<”:比较左方是否小于右方
    “==”:比较左方是否等于右方
    “>=”:比较左方是否大于等于右方
    “<=”:比较左方是否小于等于右方
    “!=”:比较左方是否不等于右方
  2. 逻辑运算符号
  • 逻辑与:&&和&,如 op1&&op2 ,结合方向为从左到右
  • 逻辑或:||,如 op1||op2 ,结合方向为从左到右
  • 逻辑非:!,如 !op,结合方向为从右到左
  1. 位运算符
    ①“按位与”运算:&,如果两个变量对应位都为1,结果才为1
    ②“按位或”运算:|,如果两个变量对应位都0,结果才为0
    ③“按位取反”运算:~,变量对应位的0和1修改
    ④“按位异或”运算:^,对应位相同时位0,不同时为1
    ⑤移位操作
    “<<”:左移
    “>>”:右移
    “>>>”:无符号右移,无论最高位时0还是1,左侧被移空的高位都填入0
  2. 三元运算符
    格式:条件值?值1:值2
    如:boolean b=20<45?true:false;
    三元运算符等价于if…else语句
  3. 运算符优先级
    增量和减量->算术->比较->逻辑->赋值
1.5 数据类型转换
  1. 隐式类型转换
    低级类型向高级类型的转换。
    优先级:byte<short<int<long<float<double
package Number;
public class Conver {
public static void main(String[] args) {
	    byte mybyte=127;
	    int myint=150;
	    float myfloat=457.12f;
	    double mydouble=45.46546;
	    char mychar=10;
	    String name="huwei";
	    int a=(int)mydouble;
	    int b=(int)mybyte;
	    int c=(int)mydouble;
		System.out.println("byte and float:"+(mybyte+myfloat));
		System.out.println("byte and int:"+mybyte*myint);
		System.out.println("byte and char:"+mybyte/mychar);
		System.out.println("double and char:"+(mydouble+mychar));
		System.out.println(a);
		System.out.println(b);
		System.out.println(c);
		System.out.println(name);
		// 单行注释
		/* 
		 多行注释
		 */
}
  1. 显式类型转换
    高级类型向低级类型的转换。
    语法格式为:(类型名)要转换的值
    如:
int x=(int)45.67;
1.6 代码注释与编码规范
  1. 代码注释
    ①单行注释://注释内容
    ②多行注释:/* 注释内容*/
    ③文档注释:/** 注释内容*/
  2. 编码规范

第二部分 Java流程控制

2.1 复合语句

复合语句以开括号"{“开始,闭括号”}"结束

2.2 条件语句
  1. if条件语句
    ①简单的if条件语句

if(布尔表达式){
语句序列
}

②if…else语句

if(布尔表达式){
若干语句
}
else{
若干语句
}

③if…else if多分支语句

if(布尔表达式){
若干语句
}
else if(布尔表达式){
若干语句
}

  1. switch多分支语句
    是一个多选一的语句

switch(表达式){
case 常量值1;
语句块1
[break;]

case 常量值n;
语句块n
[break;]
default:
语句块n+1;
[break;]
}

package Number;
public class Compound {
	public static void main(String[] args) {
		int x=20;
		int c=45;
	    int d=12;
		{
			int y=40;
			System.out.println(y);
			int z=245;
			boolean b;
			{
				b=y>z;
				System.out.println(b);	
			}
		}
		String word="Hello Java";
		System.out.println(word);
		if(c>d) {
			System.out.println("变量c大于变量d");
		}
		if(c<d) {
			System.out.println("变量c小于变量d");
		}//比较变量c和变量d的值大小
		if(c==d) {
			System.out.println("你赢了!");
		}
		else {
			System.out.println("你输了!");
		}
			
		if(x>30) {
			System.out.println("x>30");
		}else if(x>10) {
			System.out.println("x>10 and x<30");
		}else if(x>0) {
			System.out.println("x>0 and x<10");
		}else {
			System.out.println("x<0");
		}
		int week=2;
		switch(week) {
		case 1:
			System.out.println("Monday");
			break;
		case 2:
			System.out.println("Tuesday");
			break;
		case 3:
			System.out.println("Wednesday");
			break;
		default:
			System.out.println("Soory!I don't know.");
		}
		int k=1;
		int sum=0;
		while(k<=10) {
			sum=sum+k;
			k++;
		}
		System.out.println("sum="+sum);
		{
		int p=100;
		do {
			System.out.println("ok!");
			p--;
		}while(p==10);
		}
	}
}
2.3 循环语句
  1. while循环语句
    while语句也称为条件判断语句,它的循环方式为利用一个条件来控制是否要继续反复执行这个语句。先判断条件是否成立,再进行循环。

while(条件表达式){
执行语句
}

  1. do…while循环语句
    先循环,再判断条件是否成立。

do{
执行语句
}
while(条件表达式)

  1. for循环语句
    一个for循环可以用来重复执行某条语句,直到某个条件得到满足。

for(表达式1;表达式2;表达式3)
{
语句序列
}

  1. foreach语句
    foreach语句是for语句的特殊简化版本,在遍历数组等方面有很大便利。

for(元素变量x:遍历的对象obj){
引用了x的Java语句
}

2.4 循环控制
  1. break语句
    使用break语句可以跳出switch结构。在循环结构中,同样也可用break语句跳出当前循环体,从而中断当前循环。
    循环嵌套下,break语句将只会使程序流程跳出包含它的最内层的循环结构,即只跳出一层循环。
  • 如果想让break跳出外层的循环,Java提供了’‘标签’‘功能,可以跳出’‘标签’'以及其以内的循环层,语法如下:

标签名:循环体{
break 标签名;
}

  1. continue语句
    continue语句是针对break语句的补充。continue不是立即跳出循环体,而是跳过本次循环结束前的语句,回到循环的条件测试部分,重新开始执行循环。
  • 在for循环中遇到continue语句后,首先执行循环的增量部分,然后再进行条件测试;
  • 在while和do…while循环中遇到continue语句后,continue语句控制直接回到条件测试部分。

continue语句同样也有标签功能跳出指定的循环体,其语法和break类似。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值