java学习

java学习收获

1、java环境以及工具

java的跨平台原理

java源代码(java文件)经过编译器编译为Java字节码(class文件),再通过Java虚拟机(JVM)实现跨平台。
JVM是一个运行java字节码的虚拟计算机系统,他有一个解释器组件,可实现java字节码和计算机操作系统之间的互通,不同的运行平台,有不同的JVM。

java的垃圾回收器(GC)

不在使用的内存空间进行回收,消除了java程序员清理垃圾的责任。

jdk(开发工具集)

包含jre(运行时环境),api(应用程序编程接口);
jre主要有三个功能:加载代码,校验代码,执行代码:
api:java.exe编译器 javac.exe解释器 javadoc.exe文档化工具。

环境变量

配置path环境变量,是为了可以在window下的文件夹内访问并运行jdk,JAVA_HOME的目的是避免版本的更迭带来的修改不变,但本质相同。

2、java基础语法

基本数据类型

基本数据类型

变量的分类

成员变量:类对象的属性,位于类内部,方法外部定义的变量;
局部变量:方法或语句块中的变量;
变量调换小练习:

public static void main(String[] args) {
		int a=1;
		int b=2;
		System.out.println("交换前:a="+a+" "+"b="+b);
		a=a+b;
		b=a-b;
		a=a-b;
		System.out.println("交换后:a="+a+" "+"b="+b);
	}

运算符

算术运算符,赋值运算符,关系运算符,逻辑运算符,三目运算符,字符串连接符。

转义字符

基本数据类型

3、流程控制

顺序语句

分支语句

if

if(num<0) {
			System.out.println("积分错误!");
		}
		else if(num<2000) {
			System.out.print("打9折,");
			money*=0.9;
		}
		else if(num<4000) {
			System.out.print("打8折,");
			money*=0.8;
		}
		else if(num<8000) {
			System.out.print("打7.5折,");
			money*=0.75;
		}
		else {
			System.out.print("打7折,");
			money*=0.7;
		}

switch

switch(month) {
			case 1:day=31;break;
			case 2:day=28;break;
			case 3:day=31;break;
			case 4:day=30;break;
			case 5:day=31;break;
			case 6:day=30;break;
			case 7:day=31;break;
			case 8:day=31;break;
			case 9:day=30;break;
			case 10:day=31;break;
			case 11:day=30;break;
			case 12:day=31;break;
			}

循环语句

for(初始条件;判断;变量操作){语句块;},先初始化,再判断;
do{语句块} while(t判断条件),先执行一次语句块,再判断;
while(判断条件){语句块},先判断,再执行,可以与for相互转换;
退出一层循环:break与continue
退出多重循环:
示例:

int[] s={1,2,3,4,6};
hh:for(int i:s)
        for(int j:s){
            System.out.println(i+","+j);
            //此时的break退出二重循环
            break hh;
            
        }

4、数组

数组定义

int[] nums1=new int[10];
//再赋值
int[] nums2={1,2,3,4);
int[] nums3=new int[]{1,2,3,4};
 

遍历数组

int[] nums= {1,2,3};
		for(int i=0;i<nums.length;i++) {
			System.out.println(nums[i]+" ");
		}

冒泡排序

算法思想:遍历依次比较前后大小,如果前一个数大于大于后一个数,交换,一次确定一个数的位置;

for(int i=0;i<nums.length;i++) {
			for(int j=0;j<nums.length-1;j++) {
				if(nums[j]>nums[j+1]) {
					int temp=nums[j];
					nums[j]=nums[j+1];
					nums[j+1]=temp;
				}
			}
		}

二分查找

算法思想:利用顺序表的随机存取,查找中间数,下标由最大下标和最小下标控制;

while(low<=high) {
        	mid=(high+low)/2;
            if(a[mid]>n) {
        	high=mid-1;
            }
            else if(a[mid]<n) {
        	low=mid+1;
            }
            else if(a[mid]==n)
            return mid;
	    }

//小白进阶中…

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值