文档章节

容易忽视的细节——java基本数值类型取值范围的影响

q
 qq52378628
发布于 2016/11/22 19:59
字数 163
阅读 0
收藏 0

如下代码,执行test()函数后,屏幕打印结果为?

public class Test2
{
       public void add(Byte b)
       {
             b = b++;
       }
       public void test()
       {
             Byte a = 127;
             Byte b = 127;
             add(++a);
             System.out.print(a + " ");
             add(b);
             System.out.print(b + "");
       }
       public static void main(String[] args) {
		new Test2().test();
	}
}

程序的输出结果为

-128 127

原因:

java字节型byte的取值范围是-128~127(-2⁷~2⁷-1)。

127的2进制表示为‭01111111‬  加1后就是10000000‬

根据补码的定义,最高位为符号位,128(补码的真值)= 256(2⁸) -  |-128(原码)|

在计算机中表示时是补码10000000‬,输出时却是原码-128

© 著作权归作者所有

共有 人打赏支持
q
粉丝 0
博文 9
码字总数 1754
作品 0
广州
一起学Java7新功能扩展——深入历险分享(一)

特此声明:因网友疑问,这里声明一个重要的安全,就是大家所知的java惊现0day漏洞!8月30日,Oralce紧急发布了新版本的JDK和JRE,原因是发现了一个严重的0day漏洞CVE-2012-4681,远程攻击者可...

Beyond-Bit
2012/09/03
0
26
【目录导航】JAVA零基础进阶之路

【JAVA零基础入门系列】(已完结)导航目录 Day1 开发环境搭建 Day2 Java集成开发环境IDEA Day3 Java基本数据类型 Day4 变量与常量 Day5 Java中的运算符 Day6 Java字符串 Day7 Java输入与输出...

MFrank
06/21
0
0
Java数据类型之byte和char

1 bit = 1 个二进制位 1 byte = 8 bit 基本数据类型 Java基本数据类型 int 32bit short 16bit long 64bit byte 8bit char 16bit float 32bit double 64bit 位(bit) 比特(英语:Bit),亦称......

秋风醉了
2014/05/15
0
0
Java 语言中 Enum 类型的使用介绍

Enum 类型的介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中。而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常...

F风向标F
2014/04/15
0
0
Java开发每日复盘2018_0515

今天跟大家分享几个Java小细节: 【1】「for each循环的写法」 【2】「常量 final 写法细节」 【3】「类型转换之String转其他」 下面我们来一个一个说: 【1】「for each循环的写法」 Java中:...

ZeroOSTalk
05/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

php 使用redis锁限制并发访问类

1.并发访问限制问题 对于一些需要限制同一个用户并发访问的场景,如果用户并发请求多次,而服务器处理没有加锁限制,用户则可以多次请求成功。 例如换领优惠券,如果用户同一时间并发提交换领...

豆花饭烧土豆
10分钟前
0
0
Linux环境搭建 | 手把手教你配置Linux虚拟机

在上一节 「手把你教你安装Linux虚拟机」 里,我们已经安装好了Linux虚拟机,在这一节里,我们将配置安装好的Linux虚拟机,使其达到可以开发的程度。 Ubuntu刚安装完毕之后,还无法进行开发,...

良许Linux
12分钟前
0
0
Nginix开启SSL支持HTTPS访问(自签名方法)

Nginix开启SSL支持HTTPS访问(自签名方法) 超文本传输安全协议(缩写:HTTPS,英语:Hypertext Transfer Protocol Secure)是超文本传输协议和SSL/TLS的组合,用以提供加密通讯及对网络服务器...

openthings
28分钟前
0
0
(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0
jquery创建类似于java的map

var map = {}; // Map map = new HashMap(); map[key] = value; // map.put(key, value); var value = map[key]; // Object value = map.get(key); var has = key in map; // boolean has = ......

SuperDabai
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部