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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 1021361407 中级黑马   /  2015-3-14 15:20  /  1061 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 1021361407 于 2015-3-14 16:24 编辑
  1. package com.xiazuode;

  2. public class jiecheng {

  3.         public static void main(String[] args){
  4.                 long l = 012,i=12;
  5.                
  6.                 System.out .print(l+"   "+i);
  7.                
  8.                 }
  9. }
  10.         
复制代码

先看代码,打印结果是10   12
请问这个是怎么存放的,前面加个0就成八进制存放了?

8 个回复

倒序浏览
之前都没有发觉 这个问题哦  看来果真如楼猪所说的加0 都按照8进制计算了
回复 使用道具 举报
就写12不行吗?前面不是注明long类型了吗,计算机自己会分配存储的吧,加0是八进制。你这是后面的了吧,还用了package。
回复 使用道具 举报
这是JAVA自带的机制,前缀为0是八进制,0x是16进制
回复 使用道具 举报
二进制:由0,1组成。以0b开头。
八进制:由0,1,...7组成。以0开头。
十进制:由0,1,...9组成。默认整数是十进制。
十六进制:由0,1,...9,a,b,c,d,e,f(大小写均可)组成。以0x开头。
回复 使用道具 举报
前面带0是八进制,前面带0x是16进制,这是java的进制数字写法规范
回复 使用道具 举报
八进制数以0开始。
回复 使用道具 举报
艺多不压身丶 发表于 2015-3-14 15:29
二进制:由0,1组成。以0b开头。
八进制:由0,1,...7组成。以0开头。
十进制:由0,1,...9组成。默认整数是 ...

之前还真没注意过,就只0x是十六进制的意思
回复 使用道具 举报
谢鸿 中级黑马 2015-3-14 18:46:12
9#
不错!!!这小知识一直没发现!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马