java部分基础知识点1

java部分基础知识点1

1. dos的基本操作命令

盘符切换:
   盘符号(不区分大小写):  
    举例:   d:
    
 罗列当前目录下的所有文件以及文件夹:dir
 进入指定的目录:cd
 回退上一级:cd..
 回退根目录:cd\
 创建目录: md 文件夹名称
 创建文件 :copy con 文件名称
        内容(ctrl+Z) 回车
 删除文件: del 单个文件  
          del *.txt
          
 删除目录:rd  文件夹名称(空目录)
 删除带内容的目录:
  rd  /s  文件夹名称:询问是否删除
  rd /s /q :暴力删除
  
  ipconfig
  ping ip地址

2.path环境变量的配置

1)将jdk安装目录的bin目录路径作为path变量中的某个变量直接引用!
	2)系统变量:
			变量名:JAVA_HOME
			变量值:Jdk的安装目录
			
			在path:引入JAVA_HOME变量
			%JAVA_HOME%\bin

3. 常量以及分类

常量:在程序运行过程中,其值不发生改变!
			"hello" (常量池)
		分为两大类:
			1)字面值常量
				字符串常量
				字符常量
						'a' ,'A','0':单独使用输出的字符本身
						参与运算:找ASCII码表的值
							'A':65
							'a':97
							'0':48
				整数常量
				小数常量
				布尔常量
				空常量
			
			2)自定义常量(居多) :和final有关系  


4.十进制到任意进制的转换

1). 8421码(快速转换法:快速的将十进制—二进制 二进制—十进制)

x进制  -  y进制

  分步完成:
     x进制----十进制
     十进制---y进制

举例:二进制     八进制

2). 有符号位的数据表示法(计算机底层进行计算:采用补码进行计算)

正数/负数:原,反,补

5.变量

1.变量的概念
2.变量的三要素
数据类型
	变量名称(遵循标识符的规则)
	初始化值
3.变量的数据类型的划分
	两大类:
       基本数类型:四类八种
					整数类型:默认int
						byte		范围:-128-127			1个字节
						short								2个
						int									4
						long								8
						
					浮点类型:默认double		
						float								4
						double								8
						
					字符类型:char							2个字节
						
					布尔类型
						boolean (true/false)				占1个字节
			引用数据类型:
							数组,接口,类(具体类,抽象类)
							
4.隐式转换以及显示转换
	byte,short,char三者之间不转换,一旦运算,先转换为int类型进行计算!
	
	标数据类型(目前基本类型)    变量名  =  (目标数据类型)初始化值;

6.运算符

1. 算术运算符
    		++/--
    			参与运算:
				++/--在变量前面:先进行自增或者自减,然后参与运算
				++/--在后面:先运算,在自增或者自减
2. 赋值运算符
    	扩展的赋值运算符:
    	
    		+=,*=,-=,/=,%=...
    		隐藏了强制类型转换
	
			short  s = 1 ;
			s+=1;===>等价于 :  s = (short)(s+1) ; 
	
3.比较运算符(关系运算符)
比较运算符---关系运算符
	
	>,<,>=,<=,==,!=
	
	
	
	变量x范围: 
			数学表达式:  3<=x<=5
			
			Java表表达式:
						x>=3 &&(逻辑运算符) x<=5
						
							 || (逻辑运算符)
						
						
						
	比较运算符:连接的表达式无论是简单还是复杂的,最终结果要么true/false
	
	
	注意事项:
	
		==不能写成= 
		
4.逻辑运算符
逻辑单与&:有false,则false
  逻辑单或|:有true,则true
  逻辑异或^:相同则为false,不同则为true
  逻辑非!:非true,false;非false,则true
     偶数个非是它本身!
   逻辑单与&和逻辑双与&&的区别?

	逻辑单与和逻辑双与:
			都表示并列关系,有false,则false!
			逻辑双与&&连接的表达式:左边为false,右边就不执行了(具有短路效果)
5.位运算符
位异或的特点以及<<,>>的特点?
		位异或:^       相同则为0,不同则为1
		一个数据被另一个数据位异或两次,其值是该数据本身!
		<<:  将<<左边的数据值乘以2的移动次幂     2<<3    2*2^3		
		>>: 将>>左边的数据除以2的移动次幂   24 >> 2   24/2^2 = 6
6.三元(三目)运算符
三元运算符的格式以及执行流程 (后面----->TreeSet集合中去使用)
		(表达式)? 执行true的结果:执行false的结果; (比较两个数据的最大值,比较数据是否相等)
执行流程:
		首先判断表达式是否成立,如果成立,执行true的结果,否则执行false的结果语句;

键盘录入数据 Scanner类 : java.util.Scanner;

应用场景: 
JavaSE:去使用键盘录入数据  
  
模拟用户登录/注册的操作

    a)导包
	在class上面,package 下面
		import java.util.Scanner ;
		
	b)在main方法中创建键盘录入对象Scanner
	Scanner sc = new Scanner(System.in) ;
	c)提示并集接收数据
	System.out.println("请输入数据:") ;
	//目前使用方法:Scanner类提供了方法:nextInt()
	int number = sc.nextInt() ;
	d)针对number操作,要么输出/比较/求最大值....




流程控制语句: If语句

if语句格式2以及执行流程
		开发中:if...else...
		if(表达式){
				语句1;
		}else{
				语句2;
		}
		
		表达式是否成立,如果成立,执行语句1,否则,执行语句2;
		
		
	if语句格式2它和三元运算符的区别?
		if语句格式2范围更大一些:推荐使用if语句格式2
			if语句格式2:既可以操作具体的数据值/也可以操作输出语句	
			三元运算符:仅仅是作为一个运算符,一般都是操作具体的数据值!
			int a = 10 ;
			int b  =20 ;
			(a>b) ? a:  b ;
			
			如果能够使用三元运算符的就一定能够使用if...else...
			但是如果能够使用if...else...,不一定能够使用三元运算符。

if语句格式嵌套

需求:键盘录入三个数据:求三个数据最大值
if(表达式){
    if(表达式1){
        
        
    }else{
        
        
    }
    
}else{
    if(表达式){
        
        ...
    }else{
        
        ....
    }
    
}

流程控制语句:选择结构语句之switch语句

switch语句格式: switch(表达式) {
case 值1: 语句体1;
break;
case 值2: 语句体2;
break; …
default: 语句体n+1;
break; }


执行流程首先计算出表达式的值其次,和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程
中,遇到break就会结束。最后,如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序
结束掉。


注意事项:
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
default可以省略吗?可以省略。一般不建议。除非判断的值是固定的。(单选题)
break可以省略吗?可以省略,一般不建议。否则结果可能不是你想要的
default的位置一定要在最后吗?可以出现在switch语句任意位置。
switch语句的结束条件:
遇到break
执行到程序的末尾


1. case穿透性

在switch语句中,如果case的后面不写break,将出现穿透现象,也就是不会在判断下一个case的值,直接向后运
行,直到遇到break,或者整体switch结束。

public static void main(String[] args) { int i = 5; switch (i){
case 0: System.out.println("执行case0");
break;
case 5: System.out.println("执行case5");
case 10: System.out.println("执行case10");
default: System.out.println("执行default"); } }

上述程序中,执行case5后,由于没有break语句,程序会一直向后走,不会在判断case,也不会理会break,直接
运行完整体switch。
由于case存在穿透性,因此初学者在编写switch语句时,必须要写上break。

2. if语句和switch语句的区别

在做判断的时候,我们有两种选择,if语句和switch语句,那么,我们到底该如何选择使用那种语句呢?
if语句使用场景:
针对结果是boolean类型的判断
针对一个范围的判断
针对几个常量值的判断
switch语句使用场景:

流程控制语句:循环结构语句

初始化语句:一条或者多条语句,这些语句完成一些初始化操作。
判断条件语句:这是一个boolean 表达式,这个表达式能决定是否执行循环体。
循环体语句:这个部分是循环体语句,也就是我们要多次做的事情。
控制条件语句:这个部分在一次循环体结束后,下一次循环判断条件执行前执行。通过用于控制循环条件中的变
量,使得循环在合适的时候结束。


1. 循环语句1–for

for循环语句格式:
for(初始化表达式①; 布尔表达式②; 步进表达式④){ 
    循环体③
    }
执行流程
执行顺序:①②③④>②③④>②③④…②不满足为止。
①负责完成循环变量初始化
②负责判断是否满足循环条件,不满足则跳出循环
③具体执行的语句
④循环后,循环条件所涉及变量的变化情况

循环练习:使用循环,计算1-100之间的偶数和
public static void main(String[] args) { //1.定义一个初始化变量,记录累加求和,初始值为0 
		int sum = 0; //2.利用for循环获取1‐100之间的数字
        for (int i = 1; i <= 100; i++) { //3.判断获取的数组是奇数还是偶数 
        		if(i % 2==0){ //4.如果是偶数就累加求和 
        				sum += i; 
        				} 
        		}//5.循环结束之后,打印累加结果 
        	System.out.println("sum:"+sum);
          }


注意事项:
判断条件语句的结果是一个boolean类型循环体语句如果是一条语句,大括号可以省略;
如果是多条语句,大括号不能省略。建议永远不要省略。
一般来说:有左大括号就没有分号,有分号就没有左大括号

2.循环语句2–while

while循环语句格式:
while循环语句格式: 
基本格式 while(判断条件语句) { 
	循环体语句;
    } 
    扩展格式 
    	初始化语句; 
    		while(判断条件语句) { 
    			循环体语句; 
    			控制条件语句; 
    		}
    		
案例:
while循环实现打印10次HelloWorld 

public static void main(String[] args) { //while循环实现打印10次HelloWorld 
	//定义初始化变量 
	int i = 1; 
	//循环条件<=10 
	while(i<=10){ 
	System.out.println("HelloWorld");
    //步进 
    i++; 
    } 
}

while循环计算1-100之间的和

public static void main(String[] args) { 
	//使用while循环实现 
	//定义一个变量,记录累加求和 
	int sum = 0; 
	//定义初始化表达式 
	int i = 1; 
	//使用while循环让初始化表达式的值变化
	while(i<=100){ 
		//累加求和 
		sum += i ;
        //步进表达式改变变量的值 
        i++; 
        }
        //打印求和的变量 
        System.out.println("1‐100的和是:"+sum);
    }
    
    
    for循环和while循环的区别
for循环语句和while循环语句可以等价转换,但还是有些小区别的使用区别:
控制条件语句所控制的那个变量,在for循环结束后,就不能再被访问到了,而while循环结束还可以继续使用,如
果你想继续使用,就用while,否则推荐使用for。原因是for循环结束,该变量就从内存中消失,能够提高内存的使
用效率。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值