1、一个"java"源文件中是否可以包含多个类(不是内部类)?有什么限制
可以有多个类,但只能有一个public的类,并且public的类名必须和文件名一致。
是java中的保留字段,目前并没有使用。
char型变量是用来存储Unicode编码的字符的,Unicode编码字符集中包含了汉字,所以,char型变量中可以存储汉字。不过,如果某个特殊的汉字没有被包含在Unicode编码字符集中,那么,这个char型变量中就不能存储这个特殊汉字。补充说明:Unicode编码占用两个字节,所以,char类型的变量也是占用两个字节。
在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break语句,即可跳出外层循环。
例如:
for(int i=0;i<10;i++){
for(intj=0;j<10;j++){
System.out.println(“i=” + i + “,j=” + j);
if(j == 5) break ok;
}
}
另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二维数组中查找到某个数字。
int arr[][] ={{1,2,3},{4,5,6,7},{9}};
boolean found = false;
for(int i=0;i<arr.length&&!found;i++) {
for(intj=0;j<arr[i].length;j++){
System.out.println(“i=” + i + “,j=” + j);
if(arr[i][j] ==5) {
found =true;
break;
}
}
}
1.public class DateTimeTest {
2. public static void main(String[] args) {
3. Calendar cal = Calendar.getInstance();
4. System.out.println(cal.get(Calendar.YEAR));
5. System.out.println(cal.get(Calendar.MONTH)); // 0 - 11
6. System.out.println(cal.get(Calendar.DATE));
7. System.out.println(cal.get(Calendar.HOUR_OF_DAY));
8. System.out.println(cal.get(Calendar.MINUTE));
9. System.out.println(cal.get(Calendar.SECOND));
10. // Java 8
11. LocalDateTime dt = LocalDateTime.now();
12. System.out.println(dt.getYear());
13. System.out.println(dt.getMonthValue()); // 1 - 12
14. System.out.println(dt.getDayOfMonth());
15. System.out.println(dt.getHour());
16. System.out.println(dt.getMinute());
17. System.out.println(dt.getSecond());
18. }
19.}
java5以前switch(expr)中,expr只能是 byte,short,char,int。从java5开始,java中引入了枚举 expr也可以是enum类型。
数组没有length()方法,但是有length属性。String有length()方法。在javaScript中,获得字符串的长度是通过length属性得到的,这一点和java容易混淆。
2<< 3,(左移三位)因为将一个数左移n位,就相当于乘以了2的n次方,那么,一个数乘以8只要将其左移3位即可,而位运算cpu直接支持的,效率最高,所以,2乘以8等於几的最效率的方法是2<< 3。
使用final关键字修饰一个变量时,是指引用变量不能变,引用变量所指向的对象中的内容还是可以改变的。例如,对于如下语句:
final StringBuffer a=new StringBuffer("immutable");
执行如下语句将报告编译期错误:
a=new StringBuffer("");
但是,执行如下语句则可以通过编译:
a.append(" broken!");
有人在定义方法的参数时,可能想采用如下形式来阻止方法内部修改传进来的参数对象:
public void method(final StringBuffer param){
}
实际上,这是办不到的,在该方法内部仍然可以增加如下代码来修改参数对象:
param.append("a");
口诀:n个数字来比较,外层循环N-1,内层循环N-1-i,两两相比小靠前。
代码示例:
public static void main(String[] args) {
int[] number=new int[]{22,12,33,45,66};
int temp;
//冒泡排序
for(int i=0;i<number.length-1;i++){
for(int j=0;j<number.length-1-i;j++){
if(number[j]>number[j+1]){
temp=number[j+1];
number[j+1]=number[j];
number[j]=temp;
}
}
}
for (int i =0; i < number.length; i++) {
System.out.print(number[i]+" ");
}
}
这些都是一些基础的面试题,以后每天小编都会给大家弄几道,帮助大家巩固基础。
注:所有的收集来自于各大互联网平台