java基础-demo(黑马程序员)


-------android培训、java培训、期待与您交流! ----------

1如果你觉得你很熟悉java,那么你认识这些关键字吗?

abstract assert boolean break byte
case catch   class continue
default do double else enum
extends final finally float for
if implements import instanceof int
interface long native new package
private protected public return strictfp
short static super switch synchronized
this throw throws transient try
void volatile while

如果不出意外的话,我想会有assert,native,strictfp你不会很熟悉。但除此之外const和goto也是关键字,并且为保留字!

假如你这样int const=2;//那么你会有编译错误!java不用这两个值,也不许你用!

native的作用是你要假如java外的编程语言的话,就要用到她了。assert是断言的标记符。strictfp是用于标记方法的,精确标记符。实际上以上的关键字要认识,有些不是很常用。

2第一个demo是hello java。

	public static void main(String[] args) {
		
		System.out.println("hello java");
	}
你会认为太简单吗?那么public可以换成private吗?会出现什么情况?

在java语言规范中有main函数必须为public,但是jvm的规范中没有。也就是说有的jvm或许可能编译通过!只是一个可能哦。要看jvm的技术细节了。 

3当你写下short的demo

	short lit;
	lit=lit+1;//Type mismatch: cannot convert from int to short
你会认为他很正确吗?你试一下,由于lit为short,1在这里为int型的。会有convert转换异常!太让人恍然大悟了!

3你知道if()里面是什么类型的吗?

		int flag=1;
		if(flag==1)
		System.out.println("right");
		int flag=1;
                if(1==flag)//你知道吗?c/c++高手是这样写代码的!但在java中flag=1再也不会骗过编译器了!

		Boolean n=new Boolean(true);
		if(n)
		System.out.println("right");
Boolean的对象也是可以的!一定要活学活用!不要死记忆概念!

4你知道switch()里是什么吗?

                int flag=0;
		switch(flag)
		{case  0:System.out.println("right");
			break;//关于break你还会丢吗?如果丢了,会有right和wrong两个结果!
		 case   1:System.out.println("wrong");
		        break;
		 default :System.out.println("never");
		}
你知道switch是只有byte,short,int,char如果是其他的会报错!如果为String的话Type mismatch: cannot convert from int to String,又是这个异常!Long你试一下!如果是Integer的话你知道了吗?

5你知道怎么去测试二维数组的大小么?

		int[][] array=new int[3][4];
		System.out.println(array.length);
是这样吗?你会得到3!好的怎么样去计算呢?你可以先计算维度i,利用维度i计算数组大小!

		int i=array.length;
		int sum=0;
		for(int j=0;j<i;j++)
		{
			sum=sum+array[j].length;
		}
		System.out.println(sum);

你明白了没?array[i].length计算的是该维度下的长度!

6 break和continue怎么跳出循环?我觉得是break跳出这层循环!然后continue继续这层循环。好吧这些大家都知道。怎么用break跳出多个循环?用标签!

                1.loop:
		for(int i=0;i<10;i++)
		2.loop:	
		for(int j=0;j<10;j++)
		{
			if(j==1)
			{
			System.out.println("haha");
			break loop;
			}
		}
当你测试这个用例的时候会发现loop在1时会打印1个haha而在2的时候有10个!break+标签会跳出标签处的循环!你了解吗?
7if语句的奇怪waring

	public static int sign(int n)
	{
	  if(n<0)
    	    return 0;
         else if(n>0)
    	    return 1;
         else if(n==0)
    	    return 0;
	}
你能忍受这个警告?竟然是由于必须返回一个值!虽然你认为你的判断完美无缺,但是java编译器并没有你那么聪明!你需要改的是最后一个else if换为else!

如果你感觉我的demo帮到你了,谢谢。用心思考问题。



------- android培训、java培训、期待与您交流! ----------


                
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值