IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> Java基础总结 -> 正文阅读

[Java知识库]Java基础总结

Java数据类型

Java数据类型分为基本类型与引用类型两种,基本类型有8个,分别是byte、short、int、long、double、float、boolean、char,每一种基本数据类型都对应着一种包装类型;引用类型一般为数组、类、接口。

基本类型二进制位数基本类型的默认值包装类型
boolean1flaseBoolean
byte80Byte
char16‘\u0000’Character
short160Short
int320Integer
long640Long
float320.0Float
double640.0Double

基本数据类型间的自动转换

基本数据类型间的自动转换根据二进制位数的大小,可由小的自动转换为大的,可以逐级转换也可以跨级转换。char与short之间不可以自动转换
基本数据类型间的自动转换

基本数据类型的强制转换

当需要从位数大的到位数小的转换时,是不能进行自动转换的,此时需要强制转换。
注意:

  • 小数转整数时,会自动丢弃小数部分
  • 强转是,如果长度大的数字超过长度小的类型的表示范围,则截取数字的高位字节,得到的结果无规律

表达式中数据类型的自动提升

  • java中出现的整数数字,默认是int类型
  • 表达式的返回类型以表达式中最大类型为准
  • char,short,byte在表达式中都默认提升为int
		byte b21 = 5;
        byte b22 = (byte) (b21 + 8);
        byte b23 = 8;
        byte b24 = (byte) (b21 + b23);

直接量(字面量)

  • 程序中出现的基本类型的数值、字符串、null都称为直接量
  • false和true只能赋给boolean类型
  • null只能赋给引用类型

Java运算符

算数运算符

  • + :用于数值相加或者字符串的拼接

  • - 和 * :只能用于数值运算

  • / : 整数相除抛弃小数部分,小数相除结果为小数

  • % :取模运算,即取余数;

     整数取模时也不能除数为0,会报运行异常;
    

? 小数取模结果为小数;

? 小数取模,除数为0时,得到结果NaN(not a number)

  • ++ 和 – :自增和自减运算

    ? ++在后面,在语句结束后自增1;

    ? ++在前面,在语句前面自增1;

    ? --与++同理

赋值运算符

二进制运算,每位进行运算,有**&、|、~、^、<<、>>、>>>

三目运算符

(条件表达式)?结果1:结果2

如果表达式为真,返回结果1,如果表达式为假,返回结果2
可以进行多个三目运算符拼接

	int age = 11;
	System.out.println(age > 18 ? "成人" : age > 12 ? "青少年" : "儿童");

运算符的优先级

优先级运算符结合性
1() []从左到右
2! +(正) -(负) ~ ++ –从右到左
3* / %从左到右
4+(加) -(减)从左到右
5<< >> >>>从左到右
6< <= > >=从左到右
7== !=从左到右
8&从左到右
9^从左到右
10|从左到右
11&&从左到右
12||从左到右
13?:从右到左
14= += -= *= /= %= &= |= ^= ~= <<= >>= >>>=从右到左

流程控制语句

条件语句

	单分支
	if(布尔表达式){
            //若判断结果为true将执行的语句块
    } 
    //双分支 
    if(){
    
     }else{
     
      }
    //多分支
    if(){ 
       
    }else if(){ 
       
    }
    //嵌套 
    if(){
    	if(){
      		
    	 } 
 	}else{
		if(){
			
		 } 
	}//多分支if语句,如果某个分支判断成立,不再判断其余分支

switch多选择结构

witch语句一般与brake联用,如果没有brake语句,则switch将会从满足条件的那一个一直往下执行

  • 遇到brake,则跳出switch
  • default分支可有可无,这是case分支都不满足时执行的语句
  • 惯例讲default写在最后,但是switch语句中是顺序无关的
  • switch表达式可以是int以下的基本类型或包装类型, 字符串,或者枚举(boolean不能用于 switch)。
public class Demo03 {
    public static void main(String[] args) {
        int i = 3;
        switch (i){
            case 1:
                System.out.println("查询余额");
                break;//可选
            case 2:
                System.out.println("取款");
                break;
            case 3:
                System.out.println("转账");
                break;
            case 4:
                System.out.println("其它业务");
                break;
            default:
                System.out.println("退出");
                break;
        }
    }
}

循环语句

	//先判断,后执行,有可能一次都不执行
	while(循环条件){
		循环体;
	}
	
	//先执行一次,后判断是否循环,至少执行一次 
	do{ 
		循环体; 
	}while(循环条件); 
	
	//适用于确定了循环次数的情况 
	for(循环变量;循环条件;更新循环变量){ 
		循环体; 
	}
	
	//增强for循环 
	for(数据类型 变量名 : 集合名){
	
	}

数组

一组相同类型的数据的集合,实质是内存中的一块连续空间
数组中的保存的内容称为元素,每个元素有一个对应的下标,从0开始

数组的定义

基本类型或引用类型后面加上[]

如果数组没有初始化,则默认值都为null

未初始化的数组在内存中并没有分配空间,不能指定长度

		数据类型[] 数组名;//推荐写法 
		数据类型 数组名[]; 
		int[] list;

数组的初始化

  • 直接赋值

    		int[] arrInt1 = {1, 3, 5, 7, 9};
            String[] arrStr1 = {"aaa", "bbb", "ccc"};
    
  • 通过new关键字,并赋值

    		int[] arrInt2 = new int[]{2, 4, 6, 8};
            String[] arrStr2 = new String[]{"aaa", "bbb", "ccc"};
    
  • 只初始化,不赋值,必须指定长度

    		int[] arrInt3 = new int[5];
            System.out.println(arrInt3[0]);
            boolean[] arrBoolean1 = new boolean[5];
    

数组的取值和赋值

		int[] arrInt4 = new int[3];
        arrInt4[0] = 1;
        arrInt4[1] = 3;
        arrInt4[2] = 5;
        System.out.println(arrInt4[1]);
//      System.out.println(arrInt4[3]); //数组下标越界,报运行时异常

方法

一段独立的代码块,用于完成一件事情,可以被重复使用
方法能减少代码冗余,提高代码的重用性
方法三要素:返回值类型 方法名 参数列表

自定义方法

	[访问修饰符] 返回值类型 方法名(参数类型 参数名,参数类型 参数名){ 
		//小括号中的内容称为参数列表 
		//大括号中的内容称为方法体 
	}

方法的调用

通过 类名/对象名.方法名() 调用

	import java.util.Random; 
	public class Test2 { 
		//自定义方法,用于画一个n行的三角形 
		//void 表示该方法没有返回值 
		//int n称为形式参数 
		//fun 表示该方法的名称 
		void fun(int n){ 
			for(int i=1;i<=n;i++){ 
				for(int j=1;j<=i;j++){ 
					System.out.print("*"); 
					System.out.println(); 
				} 
		}
		
		public static void main(String[] args) {
			//通过类或变量使用.操作符调用方法 
			Test2 t = new Test2(); 
			t.fun(5); 
			t.fun(7); 
			t.fun(10); 
		} 
	}

形式参数与实际参数

定义方法时的参数称为形式参数,简称形参
调用方法时传递的参数称为实际参数,简称实参

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-08-02 20:46:54  更:2021-08-02 20:47:27 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 7:12:09-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码