Java基础(一)

Java基础(一)

一、JDK、JRE和JVM

JDk:Java开发工具包, 供开发者使用(编写Java程序使用)
JRE:Java程序运行环境(只要要运行java程序所必须的运行环境)
JVM:Java虚拟机,跨平台的核心部分(Java程序其实是运行在JVM上的,JVM将Java程序的.class文件解释给本地系统)
在这里插入图片描述
在这里插入图片描述

二、类型转换

在这里插入图片描述
1、自动类型转换:容量小的类型会自动转换为容量大的数据类型
在这里插入图片描述
**注意:
(1)、short 、char 、 byte之间不进行相互的类型转换, 他们之间进行运算时都会先转换为int再计算。 【拓展:在方法的重载中,传递的是byte类型时,重载方法中没有接受byte类型的方法,有short 、int和char类型,会调用short的,没有short会调用int,不会调用char(应为char类型存储的字符只有正数,而byte可以存放负数,传参会报错)】
(2)、boolean不参与运算,String类型和任何基本数据类型进行运算,值都会便会String类型输出 **

2、强制类型转换(如下格式)

int i = 10byte b;
b = (byte)(i + b);

注意: 强制类型转换会导致精度的降低或溢出,谨慎使用

三、前++和后++

前++:先运算在取值
后++:先取值后运算

```java
 class  Test  {        
  public static void main (String []  args)  { 
 	 boolean x=true;
  	 boolean y=false; 
  	 short z=42;
	 //if(y == true)
	if((z++==42)&&(y=true))z++;
	if((x=false) || (++z==45))  z++;
	System. out.println("z="+z); 
    }
 }``

四、break 和 continue

1、break用于终止某个代码块,如下代码中的break在i==3条件成立下会结束for循环,所以只会打印0,1,2 (3是不会打印的)

public class BreakTest{ 
	public static void main(String args[]){
		 for(int i = 0; i<10; i++){ 
		 	if(i==3) 
		 		break; 
		 		System.out.println(" i =" + i); 
		 	} 
		 System.out.println("Game Over!"); 
		 } 
	}

2、continue:只会结束本次循环,下一次循环还是会执行
3、return:结束一个方法

五、数组(引用数据类型)

1、数组是相同类型(可以为任何数据类型)的数据按一定的顺序进行排列的集合,以一个名字进行命名,并通过编号(下标)的方式对数据进行管理

2、数组的特点:

  • 1)数组是有序排列的
  • 2)数组属于引用数据类型的变量。数组的元素,既可以是基本数据类型,也可以是引用数据类型
  • 3)创建数组对象会在内存中开辟一整块连续的空间
  • 4)数组的长度一旦确定,就不能修改。

3、数组的定义方式

		int[] ids;//声明
		//1.1 静态初始化:数组的初始化和数组元素的赋值操作同时进行
		ids = new int[]{1001,1002,1003,1004};
		// 方法二
		int[] arr4 = {1,2,3,4,5};//类型推断
		//1.2动态初始化:数组的初始化和数组元素的赋值操作分开进行
		String[] names = new String[5];

4、数组的默认初始化值

在这里插入图片描述
5、 数组的内存解析

  • 程序首先会加载栈中定义的局部变量,即我们的数组变量,数组是通过new的方式创建的,会在堆中开辟一个连续的空间,并给该空间一个首地址值,这个首地址值会赋给栈空间中的数组变量(这样我们就可以通过首地址值引用数组中的数据),并且会给数组中的数据进行数据初始化。

六、 Arrays工具类

  • Java.util.Arrays类
  • 常用方法:
    • equals(int [] a,int[] b):判断两个数组是否相等
    • toString(int[] a):输出数组信息
    • fill(int[] a,int val):将指定的值填充到数组中
    • sort(int[] a):对数组进行排序
    • binarySearch(int[] a,int key):对(排序后)的数组进行二分法检索指定的值
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值