/**PageBeginHtml Block Begin **/ /***自定义返回顶部小火箭***/ /*生成博客目录的JS 开始*/ /*生成博客目录的JS 结束*/

Light

* 博客文章部分截图及内容来自于学习的书本及相应培训课程以及网络其他博客,仅做学习讨论之用,不做商业用途。
* 如有侵权,马上联系我,我立马删除对应链接。
* @author Alan
* @Email no008@foxmail.com

复制代码
package com.alanliu.Java8BasicCodeStuding.Java8BasciCode.Unit3.Point3;

//Compute distance light travels using long variables.
/*


Java定义了4种整数类型: byte、short、int和 long。所有这些类型都是有符号的.
正的或负的整数。Java不支持无符号的、只是正值的整数。许多其他计算机语言同时支持有符号和无符号的。




整数类型的宽度和范围:
名称    宽度   范围
long   64    -9223372 036 854 775 808~9 223 372 036 854 775 807
int    32    -2147 483648~2147 483647
short  16    -32768~32 767
byte   8     -128~127


3.3.1byte
	最小的整数类型是byte。它是有符号的8位类型,范围为-128~127。
	当操作来自网络或文件的数据流时,byte类型的变量特别有用。
	当操作与Java 的其他内置类型不直接兼容的原始二进制数据时,byte类型的变量也很有用。
	字节变量是通过关键字byte声明的。例如,下面声明了两个byte变量b和c:
	byte b, c;

3.3.2short
	short是有符号的16位类型。它的范围为-32768~32767。它可能是最不常用的Java类型。
	下面是声明short变量的一些例子:short s;H short t;

3.3.3 int
	最常用的整数类型是int。它是有符号的32位类型,范围为-2147483648~2147 483 647。
	除了其他用途外, int类型变量通常用于控制循环和索引数组。
	对于那些不需要更大范围的 int类型数值的情况,您可能会认为使用范围更小的 byte和 short类型效率更高,然而事实并非如此。
	原因是如果在表达式中使用byte和 short值,当对表达式求值时它们会被提升(promote)为int类型(类型提升将在本章后面描述)。
	所以,当需要使用整数时,int通常是最好的选择。
3.3.4 long
	long 是有符号的64位类型,对于那些int类型不足以容纳期望数值的情况,long类型是有用的。
	long类型的范围相当大,这使得当需要很大的整数时它非常有用。
	例如,下面的程序计算光在指定的天数中传播的距离(以英里为单位):



*/
class Light {
	public static void main(String args[]) {
		int lightspeed;
		long days;
		long seconds;
		long distance;

		// approximate speed of light in miles per second
		lightspeed = 186000;

		days = 1000; // specify number of days here

		seconds = days * 24 * 60 * 60; // convert to seconds

		distance = lightspeed * seconds; // compute distance

		System.out.print("In " + days);
		System.out.print(" days light will travel about ");
		System.out.println(distance + " miles.");
	}
	/**
	 *  这个程序产生的输出如下所示:
	 *  In 1000 days light will travel about 16070400000000 miles.
     *  显然,int 变量无法保存这么大的结果
	 *
	 *
	 */
}
复制代码
posted @   一品堂.技术学习笔记  阅读(153)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
历史上的今天:
2021-02-17 在IDEA中让freemarker编辑时自动刷新
2021-02-17 IDEA Spring Boot 创建 freemarker 文件模板
2021-02-17 SpringBoot 整合jsp
2021-02-17 Git客户端(TortoiseGit)基本使用详解
2021-02-17 异常:This application has no explicit mapping for /error, so you are seeing this as a fallback.
点击右上角即可分享
微信分享提示