Java基础学习心得体会

Java基础学习心得体会

变量:程序运行期间,值可以发生变化的量;把变量理解为容器;
java的执行过程从上到下,从左到右。
运算符:
1.赋值运算符 =
2.算数运算符 + - * / % ++ –
3.比较运算符> < == != >= <=
4.复合运算符+= -= *= /= %=
5.逻辑运算符&& || !
6.条件运算符 ? :

运算符的使用注意

  1. 赋值运算符;
    赋值号 从后向前翻译
    int m=8*7;
  2. 算数运算符;
		int m=10;
		int n=21;
		System.out.println(m+n);
		System.out.println(m%n);
		System.out.println(m/n);
		System.out.println(n%m);
		System.out.println(n/m);
		System.out.println(m++);//先执行语句 后自增
		//m++;++m;此情况 自增都会执行
		/*
		 * 如果除了自增还有其他代码需要执行,那么++在前就先自增后执行语句;
		 * 如果++在后,就先执行语句,后自增;
		 * --同上
		 * */

3.比较运算符 返回值 boolean

		int m=18;
		int 	n=28;
		boolean result= m>n;
		System.out.println(result);
		System.out.println(m == n);
		System.out.println(m!=n);
  1. 复合运算符
		//问题:/ % -		
		//a1=2-a1;
		//以下才可以简写
//		a1= a1-2;
//		a1-=2;
		
//		a1=a1/2;
//		a1/=2;
  1. 逻辑运算符
    &&:要求运算符两边的条件同时为真,结果才为真!
    ||:只要两边任意一个为真,结果即为真!
    !:对结果取反!
		int age=18;
		int money=10;
		System.out.println(age>=18 && money>=5);
		System.out.println(true && age>1);
		System.out.println(false || money>5);
		System.out.println(!(false||true));
  1. 条件运算符 ? :
    规则: boolean值 ? 值1:值2;
    如果boolean为true,就取走值1;如果为false,就取走值2;
//求三个数中的最小数
		int x=44;
		int y=66;
		int z=88;
		int min=(x<y?x:y)<z?(x<y?x:y):z;
		System.out.println(min);

循环语句

for循环语句

			//公约数
			int n=12;
        	int m=18;
        	int num=0;
        	for(int i=1;i<(n<m?n:m);i++) {
        		if(n%i==0&&m%i==0) {
        			num=i;
        		}
        	}
        	System.out.println(num);
        	//公倍数
        	for(int j=n>m?n:m;j<=m*n;j++) {
        		if(j%n==0&&j%m==0) {
        			System.out.println(j);
        			break;
        		}
        	}

do…while 不管条件是否成立 循环体先走一次

 int	a = 10;
			do {
				System.out.println("撸啦啦啦啦");
			}while(a < 9);
			//do..while 不管条件是否成立  循环体先走一次

while 未知的循环次数

		long money=1000000000;//一个亿
		int count=0;
		while(money>0) {
			money/=2;
			count++;
		}
		System.out.println(count);

break 结束离 其最近的一层循环
continue 跳过本次循环 继续下一次

条件语句

switch… case语句

		//练习:输入年月日,判断此日期是当年的第几天
		System.out.println("输入月份:");
		Scanner scanner=new Scanner(System.in);
		int year=2019;
		int month=scanner.nextInt();
		int day=24;//当月几号
		int sum=day;//存储天数
		//判断闰年多的一天
		if(month>2) {
			if(year%4==0&&year%100!=0||year%400==0) {
				sum+=1;
			}
		}
		switch (month-1) {
		case 11:
			sum+=30;
		case 10:
			sum+=31;
		case 9:
			sum+=30;
		case 8:
			sum+=31;
		case 7:
			sum+=31;
		case 6:
			sum+=30;			
		case 5:
			sum+=31;
		case 4:
			sum+=30;
		case 3:
			sum+=31;
		case 2:
			sum+=28;
		case 1:
			sum+=31;
			break;
		}
		System.out.println(sum+"天");

if…else语句

//练习:判断闰年!如果对4整除100不整除,或者对400整除则为闰年!
		int year =2019;
		if((year%4==0 && year%100!=0)|| year%400==0 ) {
			System.out.println(year+"是闰年");
		}else {
			System.out.println(year+"不是闰年");
		}

数组

数组的规则
数据类型[] 变量名={元素1,元素2…}
数据类型[] 变量名=new 数据类型[元素个数];

		int[] arr1= {2, 8};//静态创建
		int[] arr2= new int[10];//动态创建
		int[] arr3= {};//在内存中没有空间!用不了

加粗文本 加粗文本

下标:就是元素在数组中的编号;从0开始,最大是元素个数-1;
数组注意事项:
直接数出数组时,打印的是数组的地址!
不可以直接对数组做运算,可以对数组中的元素做运算

		//如何访问数组中的每一个元素
		int[] arr5= {3,9,12,27,34,10,6,1};
		for(int i=0;i<arr5.length;i++) {
			System.out.println(arr5[i]);
		}

随机数

		Random random=new Random();
		int num =random.nextInt(28-20+1)+20;
		//random.nextInt();  随机整数 有正负之分
		//random.nextInt(n);   随机范围0到(n-1)
		//random.nextInt(11)+18;18--28  random.nextInt(28-18+1)+18;
		//区间值[min,max] nextInt(max-min+1)+min;//大范围减小范围+1取余+小范围
		System.out.println(num);
		//练习:定义数组,存储10个整数取值[30,90];获取所有的元素和
		//以及最大值和最小值
		System.out.println("---------------------");
		int[] arr6=new int[10];
		int max=0;
		int min=90;		
		int sum=0;
		for(int i=0;i<arr6.length;i++) {
			arr6[i]=random.nextInt(90-30+1)+30;
			System.out.println(arr6[i]);
			if(max<=arr6[i]) {
				max=arr6[i];
			}
			if(min>=arr6[i]) {
				min=arr6[i];
				
			}
			sum+=arr6[i];
		}
		System.out.println("=====================");
		System.out.println(max);
		System.out.println(min);
		
		/*
		 * 练习2:在练习1的基础上,获取最大数和最小数的位置下标!
		 * 
		 * */
			System.out.println("==========================");	
		 
		for(int i=0;i<10;i++) {
			if(max==arr6[i]) {
				System.out.println("最大值下标"+i);
			}
			if(min==arr6[i]) {
				System.out.println("最小值下标是"+i);
				continue;
			}
		}
		
		
		/*
		 * 练习3:定义两个整数数组,分别存储5个整数取值范围[20,50]
		 * 将两个数组拼接成一个元素长度为10的数组!
		 * */
		System.out.println("===================");
		int[] a=new int[5];
		int[] b=new int[5];
		int[] c=new int[10];//(0---4)(5---9)
		for(int i=0;i<5;i++) {
			a[i]=random.nextInt(31)+20;
			b[i]=random.nextInt(31)+20;
			c[i]=a[i];
			c[i+5]=b[i];
			System.out.println(c[i]);
			System.out.println(c[i+5]);
		}
		
		/*
		 * 练习4:将练习3中的大数组元素,前后对调!(例如:asdfg对调gfdsa)
		 * */
		System.out.println("原数组");
			for(int i=0;i<c.length;i++) {
				System.out.print(c[i]+" ");
			}
		System.out.println("\n换后");
			for(int i=0;i<c.length/2;i++) {
				int len=c.length;
				int temp=c[i];
				c[i]=c[len-i-1];
				c[len-i-1]=temp;
				
				
			}
			for(int i=0;i<c.length;i++) {
				System.out.print(c[i]+" ");
			}

二维数组
二维数组 由多个一维数组组成

		int[][] nums=new int[3][4];
		int[][] nums1= {
				{12,27,38,40},
				{55,23,32,41},
				{11,21,32,44}
		};
		//
		System.out.println("\n"+nums1[1][2]);
		//注意:对于二维数组,nums1.length 获取的是行数(一维数组的个数)
		for(int i=0;i<nums1.length;i++) {
			for(int j=0;j<4;j++) {
				System.out.print(nums1[i][j]+" ");
			}
			System.out.println();
		}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值