黑马程序员_java基础知识三

本文总结了Java学习中关于自增操作的深入理解,包括代码示例解析,强调了面试中可能遇到的陷阱。同时,文章讨论了标号的使用和单行注释的区分,并解释了byte类型的范围和类型转换规则,指出在特定运算中的注意事项。
摘要由CSDN通过智能技术生成

---------------------android培训java培训、java学习型技术博客、期待与您交流! -------------------

学好java基础,对于后期的学习非常重要,在上课的过程中,老师也提到了很多面试过程中会遇到的些题目,下面做个总结:

1、关于++(自增)的

对于初学者,特别是对于我们这样没有基础的入门者来说,想真正了解还是有一定的难度的。

下面结合一段代码进行介绍:

public class Demo{
	public static void main(String[] args){
		int i=1;
		i=i++;
		System.out.println(i);
	}
}

上面这段代码执行之后,结果是1,其过程可以归纳为以下:

a、定义变量i,初始值是1。

b、i++这个式的值是1,运行完之后i自增成2。

c、把i++这个式的值赋给i,则i=1。

这段代码在开发过程中,不会写成这样,但是在面试中会遇到。

与下面这段代码有区别,需注意:

public class Demo{
	public static void main(String[] args){
		int i=1;
		int j;
		j=i++;
		System.out.println(i);
		System.out.println(j);
	}
}

上面这段代码运行如下:

a、定义变量i,并初始化值为1;

b、定义变量j;

c、i++这个式的值为1,运行完之后,i自增,则i变成了2;

d、把i++这个式子的值赋给j,则j=1。

运行结为:

2

1

2、关于标号的问题

结合以下这段代码来说明:

public class Demo{
	public static void main(String[] args){
		System.out.println("程序开始");
		http://www.baidu.com
		System.out.println("程序结束");
	}
}

上面这段代码是正确的,也许有很多学java的人会认为,是错误的,会认为中门那个是网址,在上面这段代码中,这是一段正确的代码。

其中http:是标号。

//www.baidu.com这个是单行注释,编译也是正常。

3、关于byte范围的问题

---------------------android培训java培训、java学习型技术博客、期待与您交流! -------------------

学好java基础,对于后期的学习非常重要,在上课的过程中,老师也提到了很多面试过程中会遇到的些题目,下面做个总结:

1、关于++(自增)的

对于初学者,特别是对于我们这样没有基础的入门者来说,想真正了解还是有一定的难度的。

下面结合一段代码进行介绍:

public class Demo{
	public static void main(String[] args){
		int i=1;
		i=i++;
		System.out.println(i);
	}
}

上面这段代码执行之后,结果是1,其过程可以归纳为以下:

a、定义变量i,初始值是1。

b、i++这个式的值是1,运行完之后i自增成2。

c、把i++这个式的值赋给i,则i=1。

这段代码在开发过程中,不会写成这样,但是在面试中会遇到。

与下面这段代码有区别,需注意:

public class Demo{
	public static void main(String[] args){
		int i=1;
		int j;
		j=i++;
		System.out.println(i);
		System.out.println(j);
	}
}

上面这段代码运行如下:

a、定义变量i,并初始化值为1;

b、定义变量j;

c、i++这个式的值为1,运行完之后,i自增,则i变成了2;

d、把i++这个式子的值赋给j,则j=1。

运行结为:

2

1

2、关于标号的问题

结合以下这段代码来说明:

public class Demo{
	public static void main(String[] args){
		System.out.println("程序开始");
		http://www.baidu.com
		System.out.println("程序结束");
	}
}

上面这段代码是正确的,也许有很多学java的人会认为,是错误的,会认为中门那个是网址,在上面这段代码中,这是一段正确的代码。

其中http:是标号。

//www.baidu.com这个是单行注释,编译也是正常。

3、关于byte范围的问题

	byte b1, b2, b;
	b1=3;
	b2=5;
	b=b1+b2;
	b=3+4;

问以上这段代码是否正确。

其中b=b1+b2这句是错误的,因为b1和b2是变量,参与运算时,会被自动提升为int型数据,而b为byte型,大的无法往小的数据内存数据,除非加了强转符。

b=3+4是正确的,编译可以通过,因为3和5为常量,运算后仍为常量(涉及到JVM常量优化机制)。

以下三点在很多面试场全都有出现,希望总结在这里,对您有所帮助。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值