请问java程序员面试技巧
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了请问java程序员面试技巧相关的知识,希望对你有一定的参考价值。
我也面试了有10次左右了,首先就自信,必须自信,如果连自信都没有就已经输了。还有简历上最好如实填写,有的面试是对你的简历上提问,就是你写什么他就一条一条问。
还有就是着装言谈什么的了,穿着不一定要西装领带那么正式,可是一定要简洁别夸张,别把自己的一些恶习表现出来。别紧张,自信。
Last 楼主面试成功哈~ 参考技术A 80%的事实+20%的虚构。用80%的事实去圆20%的慌。争取自己最高的待遇。 参考技术B 程序员面试第一关,也就是初面,通常都是面技术题,面试官一般都是未来的同事、小组长或者直接上司。他们选人就两个要求,一个是面试题要会做,第二个是他不讨厌你,是的只要做到不讨厌就可以了。
技术面试官会通过自己的方式去考察程序员的技术功底与基础理论知识,这个过程被有的程序员成为“造火箭式的技术轰炸”,认为面试的东西都是极为高大上的,这大概是所有面试的共性吧,考察的东西肯定是要比实际用到的东西更多一点,这也是无可厚非的。
请问一下下面这个JAVA程序错在哪?谢谢!!
public class Test2
static String[] binarise="0000","0001","0010","0011","0100","0101","0110","0111""1000","1001,"1010","1011","1100","1101","1110","1111";
static final int flag1=1;
static final int flag2=2;
static final int flag3=8;
public static void main(String[] args)
int flags=0;
System.out.println("Clear all flags...flags="+binarise[flags]);
flags=flags|flag3;
System.out.println("Clear all flag3...flags="+binarise[flags]);
flags=flags^flag1;
System.out.println("Clear all flag1...flags="+binarise[flags]);
flags=flags^flag2;
System.out.println("Clear all flag2...flags="+binarise[flags]);
int cf1=~flag1;
flags=flags&cf1;
System.out.println("Clear all flag1...flags="+binarise[flags]);
int f4=flags&flag3;
f4=f4>>>3;
System.out.println("Clear all flag3...flags="+binarise[flags]);
"0111""1000" 这里少打了个逗号,应改为:"0111","1000"
"1001,"1010" 这里打错了逗号的位置和少了个双引号 ,应改为:"1001","1010"
","1111"; 最后多了个,去掉就行。
你没有对final值更改,所以只要改了上面说的程序就对了。 参考技术B 1,数组中第8个和第9个数中间缺少逗号
2,第10个数的逗号写到引号中间去了,而且还缺少引号
3,数组后面为什么有两个花括号
这是我给你运行后的结果,其实你的程序没有半点错误,都是书写错误,所以以后写代码要仔细,一点小错误也不行。出了错,要耐心的看显示的错误信息,一般的错误信息都可以帮助找到错误的位置
Clear all flags...flags=0000
Clear all flag3...flags=1000
Clear all flag1...flags=1001
Clear all flag2...flags=1011
Clear all flag1...flags=1010
Clear all flag3...flags=1010
这是不是你想得到的显示结果?本回答被提问者采纳 参考技术C 楼上俩位啊。
将变量或方法声明为final,可以保证它们在使用中不被改变。
所以说加上final的变量就相当与一个不可改变的常量。
常量参加运算是可以的。
只要是不对其赋值和修改操作因为没有问题。
这段程序的错误原因我估计是flags经过一些列的位运算后,其中的值超出数组界限了吧。 参考技术D 三楼说得有点理!
//-------------------修改调试后-------------------
public class Test2
static final int flag1 = 1;
static final int flag2 = 2;
static final int flag3 = 8;
public static void main(String[] args)
String[] binarise="0000","0001","0010","0011","0100","0101","0110","0111","1000","1001","1010","1011","1100","1101","1110"+"1111";
int flags = 0;
System.out.println("Clear all flags...flags = " + flags + "=" +binarise[flags]);
flags = flags | flag3;
System.out.println("Clear all flag3...flags = " + flags + "=" + binarise[flags]);
flags = flags ^ flag1;
System.out.println("Clear all flag1...flags = " + flags + "=" + binarise[flags]);
flags = flags ^ flag2;
System.out.println("Clear all flag2...flags = " + flags + "=" + binarise[flags]);
System.out.println(b[0]);
System.out.println(binarise[0]);
int cf1 = ~flag1;
flags = flags&cf1;
System.out.println("Clear all flag1...flags = " + flags + "=" + binarise[flags]);
int f4 = flags&flag3;
f4 = f4 >>> 3;
System.out.println("Clear all flag3...flags = " + flags + "=" + binarise[flags]);
//--------貌似你在定义String[] binarise时用了非英文输入法---------
//------------------有的点方不是漏了就是多了点东西---------------- 第5个回答 2008-11-27 字符串数组的“”去掉一个,还有常量是不能再更改的
以上是关于请问java程序员面试技巧的主要内容,如果未能解决你的问题,请参考以下文章