Java 基础

来源:互联网 发布:jav网络机顶盒如何刷机 编辑:程序博客网 时间:2024/05/21 08:36

 
1. switch

在 Java 7之前,switch 只能支持 byte、short、char、int或者其对应的封装类以及 Enum 类型。在 Java7中,String支持被加上了。

2.&和&&

&和&&都可以用作逻辑与的运算符,表示逻辑与(and)
当运算符两边的表达式的结果都为 true 时,整个运算结果才为 true,否则,只要有一方为 false,则结果为 false。&&还具有短路的功能,即如果第一个表达式为 false,则不再计算第二个表达式,例如,对于 if(str != null && !str.equals(“”))表达式,当 str 为 null 时,后面的表达式不会执行,所以不会出现 NullPointerException 如果将&&改为&,则会抛出 NullPointerException 异常。If(x==33 & ++y>0) y 会增长,If(x==33 && ++y>0)不会增长
&还可以用作位运算符
当&操作符两边的表达式不是 boolean 类型时,&表示按位与操作,我们通常使用 0x0f 来与一个整数进行&运算,来获取该整数的最低 4 个 bit 位,例如,0x31 & 0x0f 的结果为 0x01。

3 JAVA 的基本数据类型有哪些 ? String 是不是基本数据类型 ?

Java 有 8 种基本数据类型: byte int short long double float Boolean char
byte int short long 都属于整数类型.
Double float 属于浮点类型.
Boolean 为布尔类型
Char 为字符型
String 不是基本数据类型.它定义的为对象

4.一个”.java”源文件中是否可以包括多个类(不是内部类)?有什么限制?

可以有多个类,但只能有一个 public 的类,并且 public 的类名必须与文件名相一致。

5.char 型变量中能不能存贮一个中文汉字?为什么?

char 型变量是用来存储 Unicode 编码的字符的,unicode 编码字符集中包含了汉字,所以, char 型变量中当然可以存储汉字啦。不过,如果某个特殊的汉字没有被包含在 unicode 编码字符集中,那么,这个 char型变量中就不能存储这个特殊汉字。补充说明:unicode 编码占用两个字节,所以,char 类型的变量也是占用两个字节

6. ==和equals

对于对象引用类型:“==”比较的是对象的内存地址。 对于基本类型数据,其实比较的是它的值。

        String a = new String("aw");        String b = new String("aw");        String c= "aa";        String d= "aa";        System.out.println(a==b);//false        System.out.println(c==d);//true`

这是因为常量池的存在。而运行时常量池其实是属于方法区的一部分。通俗的说,c 和 d 其实都是都是指向 “aa”这个常量。

原创粉丝点击