A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  • 常见的Unicode字符对应的编码?

    大写的A到Z是对应65到90,小写的a到z是对应97到122,字符0到9是对应48到57

  • 空字符是不是用”(两个并列的单引号)来表示?

    不是,空字符用‘\u0000′来表示,两个并列的单引号什么也不是。

  • 点,分号,花括号的各自的作用?

    点的作用有两个:一个是使用类或对象中的成员,用对象.成员,再一个就是包名和子包名之间的分隔符,例如顶层包名.子包名
    分号的作用是表示语句结束
    花括号的作用是代表一个语句块

  • 语句和关键字之间可以有任意的空白吗?

    可以的,例如System.out.            println(100);就是正确的语句,但是关键字本身不能加空白或换行

  • 标识符是什么?

    标识符就是指在程序中给包,类,接口,方法,变量起的名字

  • 标识符有什么起名规则?


    • 应以字母、下划线、美元符开头

    • 后跟字母、下划线、美元符或数字

    • 不能用关键字和保留字

    • 严格区分大小写

    • 名称长度没有限制


  • 中文的变量名可以吗?

    是可以的,例如 int 数字 = 10;这个语句是正确的。因为java中采取Unicode字符集,所以任何的Unicode中的字符都可以作为标识符的名称,但考虑字符集的支持问题推荐还是使用英文字母命名。

  • 关键字和保留字有区别吗?

    在1.5后没有区别,都被称作关键字,但是1.5之前认为关键字是在Java中有特殊用途的不允许编程人员擅自改作其他用途,而保留字是在Java中没有特殊用途但不允许编程人员擅自改作其他用途,按此说法goto和const应该是此意义上的保留字。

  • true,false,null可以用作标识符命名吗?

    不可以,这3个虽然不是关键字,但都是有特殊用途的值,也不能作为标识符命名

  • 一条声明语句可以声明多个变量吗?

    可以的,例如以下声明都是正确的

    int i;

    int i,j;

    int i = 10,j;

    int i,j = 10;

    int i = 10,j = 20;


  • 变量在没有赋值的情况下可以使用吗?

    不可以,变量没有赋值使用会报出变量未初始化的编译错误。

  • 常量有什么特点?

    在声明变量的时候加上final修饰符即为常量,表示这个变量只能被赋一次值。

  • 算数运算符有哪些?

    基本算数运算符有+ – * / % ++ –

  • 单目运算符,双目运算符,三目运算符都是什么意思?

    其实也有叫一元运算符,双元操作符,三元操作符的,指的是有几个操作数形成一个完整表达式,例如++就是一个单目运算符,只需要一个操作数就可以形成表达式,像i++,而+运算符就是双目运算符,需要两个操作数形成表达式,例如5 + 3,还有三目运算符,例如5 > 3 ? 0 : -1

  • ++和–放在前面和放在后面有什么区别?

    如果是在一个表达式中,那++放后面表示先运算表达式,然后再进行自增运算,如果在一个表达式中,++放前面,则表示先进行自增运算然后在运算表达式。–同样道理。
    例如:

int i = 10;

        int j = i ++; //先进行赋值运算然后再进行自增运算

        j的结果是10


int i = 10;

        int j = ++ i ; //先进行自增运算然后再进行赋值运算

        j的结果是11


  • -5 % 2等于几,5 % -2等于几?

    -5 % 2等于-1,5%-2等于1,运算得到是正数还是负数取决于第一个操作数的符号

  • 5 / 2 结果是不是2.5?

    不是,是2,因为5和2都是int类型,所以不可能得到double型的结果。

  • 比较运算符有哪些?

    有> < >= <= == != 六项基本比较运算

  • 任何数据类型都可以使用> < >= <=运算符吗?

    不是所有数据类型,例如true>false这个表达式就是编译错误,布尔类型和引用类型的表达式只能用==和!=两个比较运算,例如“abc” <= “xyz” 这个表达式也是编译错误的

  • ‘a’ > ‘b’这个表达式编译正确吗?

    编译正确,‘a’和‘b’是字符类型,内部用Unicode编码表示的话a是97,b是98,所以实际上比较的是97>98,结果为false

  • 逻辑运算符有哪些?

    有 &逻辑与,|逻辑或,!逻辑非,^ 异或,&& 短路与,||短路或

  • 逻辑与,逻辑或和短路与,短路或有什么区别?

    逻辑与和短路与的区别是:

  • 如果是逻辑与&,不管第一个表达式是true还是false,都会执行第二个表达式,


例如a > b & x < y,即使a > b为false,也会执行x > y

  • 如果是短路与&&,如果第一个表达式为false,将不会执行第二个表达式


例如a > b && x < y,如果a > b为false,就不会执行x > y   


        以此类推,逻辑或和短路或的区别是:

  • 如果是逻辑或|,不管第一个表达式是true还是false,都会执行第二个表达式
  • 如果是短路或||,如果第一个表达式为true,将不会执行第二个表达式

  • 与或非三个逻辑运算符的优先级是怎么排列的?

    “非”优先级最高,”与”其次,”或”优先级最低

  • 原码,反码,补码分别是什么意思?


  • 原码:将数字转换为二进制,第一位为符号位,正数为0,负数为1

例如:12的原码是00001100 -12的原码是10001100

  • 反码:正数的反码和原码相同,负数的反码将原码符号位之外的位逐位取反

例如:12的反码是00001100 -12的反码是11110011

  • 补码:正数的补码和原码相同,负数的补码将反码加1

例如:12的补码是00001100 -12的补码是11110100

最后强调一点,计算机存储数据用补码形式来存储。



2 个回复

倒序浏览
一样要给自己一个赞
回复 使用道具 举报
{:2_30:}{:2_30:}{:2_30:}{:2_30:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马