`
Cb123456
  • 浏览: 64003 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

两个整数相乘的结果一定正确吗?

    博客分类:
  • java
阅读更多

  在使用Java进行程序设计的时候,当为一个long型变量赋值一个整数常量时,如果这个值超过int型数据的取值范围,程序就会出现编译错误,但是有一种情况程序不会出错的,就是将多个int型数据进行算数运算的结果赋值给long型变量,即使这个运算结果超过int型数据取值范围,程序也不会出现编译错误.

 

 测试1:

 long num=2147483648;给num赋值时,提示出错,超出取值范围.

 

 测试2:

package Test;

public class Test {

	public static void main(String[] args) {
		long num=2147483647*10;
		System.out.println(num);
	}
}

 运行结果:

 
 
 原因:参加计算的两个整数并没有超出int型数据的取值范围,所以不会产生编译错误,结果错误是由于当这两个数进行乘积运算时,是以int型数据进行计算的,所以计算结果是int类型,由于计算结果超出int型数据的取值范围,所以程序发生了溢出,但程序会保留这个溢出的结果,所以输出了-10.

 

 

 测试3:

 

package Test;

public class Test {

	public static void main(String[] args) {
		long num=2147483647*10;
		System.out.println(num);
		long num1=2147483647L*10;
		System.out.println(num1);
	}
}

 运行结果:

 
 
 原因:由于在参加计算的两个整数中的第一整数常量后添加了大写字母L,表示要进行的运算是按长整数进行的,所以程序不会产生溢出,可以计算出正确而的结果.

  • 大小: 6.2 KB
  • 大小: 7.1 KB
1
0
分享到:
评论

相关推荐

    面向对象课程设计——分数类的设计与实现

    两个有理数相乘,以最简形式保存结果; 两个有理数相除,以最简形式保存结果; 以a/b的形式输出有理数(a是分子,b是分母); 以浮点形式输出有理数。 目的: 1) 掌握构造函数,友元函数的使用. 2) 掌握重载运算符的...

    practice-autograding-cpp-BabiDrummond:GitHub Classroom创建的Practice-autograding-cpp-BabiDrummond

    此示例活动包括修复两个函数:一个函数将两个整数相加,另一个函数将两个整数相乘。客观的使代码在所有测试中正确通过仅更改允许的文件以实现此目标(请参阅下面的说明以及特定规则)。 当所有测试都满足时,GitHub...

    practice-autograding-cpp-yekim102:GitHub Classroom创建的Practice-autograding-cpp-yekim102

    此示例活动包括修复两个函数:一个函数将两个整数相加,另一个函数将两个整数相乘。客观的使代码在所有测试中正确通过仅更改允许的文件以实现此目标(请参阅下面的特定规则说明)。当所有测试都满足时,GitHub ...

    practice-autograding-cpp-renansies:GitHub Classroom创建的Practice-autograding-cpp-renansies

    此示例活动包括修复两个函数:一个函数将两个整数相加,另一个函数将两个整数相乘。客观的使代码在所有测试中正确通过仅更改允许的文件以实现此目标(请参阅下面的特定规则说明)。当所有测试都满足时,GitHub ...

    practice-autograding-cpp-lbarros2021:GitHub Classroom创建的Practice-autograding-cpp-lbarros2021

    此示例活动包括修复两个函数:一个函数将两个整数相加,另一个函数将两个整数相乘。客观的使代码在所有测试中正确通过仅更改允许的文件以实现此目标(请参阅下面的特定规则说明)。当所有测试都满足时,GitHub ...

    人教版四年级数学下册期末测试卷 (5).doc

    10.如果一个三角形有两个角是锐角,它就一定是锐角三角形。 ( ) 11.57×101的简便算法是57×100+57=5757。 ( ) 12.a×b的积一定大于a。 ( ) 三、选择题。(把正确答案的序号填在括号里。)(6分) 1、两个...

    2021年人教版小学五年级下册数学期末试卷 (3).doc

    1. 两个质数的积一定是合数。 ( ) 2. 真分数一定小于假分数。 ( ) 3. 一个数的因数一定小于它的倍数。 ( ) 4. 棱长之和相等的两个正方体,它们的体积也相等。 ( ) 5. 5克盐溶解在45克...

    leetcode:Leetcode的解决方案,用JAVA编写

    ##Leetcode##破解[给定链表的k-Group中的反向节点]【加两个数】[在每个节点中填充下一个正确的指针 II]在旋转排序数组中查找最小值在旋转排序数组中求最小值 II 两个整数相除旋转图像最长连续序列合并间隔添加二进制...

    2021年人教版小学五年级下册数学期末试卷 (1).doc

    1、两个质数相乘的积一定是( ) [A、偶数 B、奇数 C、质数 D、合数] 2、下面分数不能化成有限小数的是( ) [A、 B、 C、 D、] 3、已知A=2×2×3,B=2×3×5,那么,A和B的最大公因数是( ) [A、2 B、4 C 、6 D、...

    大工21秋《计算机原理》在线作业1-【答案】.doc

    两个浮点数相乘,乘积的尾数是相乘两数的尾数之(),乘积的阶码是相乘两数的 阶码之和。 【A.】和 【B.】差 【C.】积 【D.】商 【本题-标准-答案】:C 9.逻辑()运算常用来分离字段。 【A.】异 【B.】乘 【C.】非 ...

    CodeSignal-Arcade-Challenges

    编写函数以返回两个参数的和 2. CenturyFromYear 此函数返回给定年份所在的世纪。它将年份除以100,然后将其四舍五入并以数字形式返回世纪。 3.检查回文 函数接受一个字符串,在数组中拆分为单个字符,然后反转并将...

    数据结构课设

    (6) 查询图中任意两个建筑间的最短路径。 4、Hash表应用 任务 :设计散列表实现电话号码查找系统。 基本要求: 1) 设每个记录有下列数据项:电话号码、用户名、地址; 2) 从键盘或文件输入各记录,不少于30个,...

    算法心得:高效算法的奥秘(原书第2版).[美]Henry S.Warren,Jr(带详细书签).pdf

    2.21 在两个或两个以上的值之间切换 47 2.22 布尔函数分解公式 50 2.23 实现16种二元布尔操作 51 2.24 习题 54 第3章 2的幂边界 56 3.1 将数值上调/下调为2的已知次幂的倍数 56 3.2 调整到上一个/下一个2的幂 ...

    数据结构(C++)有关练习题

    求n个整数的平均值; 9、 已知f为单链表的表头指针,链表中存储的都是整型数据,试写出实现下列运算的递归算法: a. 求链表中的最大整数; b. 求链表的结点个数; c. 求所有整数的平均数; 告要求:...

    微型计算机原理及应用教案

    二进制记数法用来表示数量的符号只有两个,就是0和1。二进制数中的任何一个0或1称为比特(bit)。 例如,二进制数110101可以表示为 (110101)2=1×25+1×24+0×23+1×22+0×21+1×20 3、二进制数与十进制数的相互转换 ...

    洞洞板简易制作电压、电容表(原理图、程序及算法讲解)-电路方案

    注意要在5000后面加个”L“字符哟,因为结果是长整数,不加时是两个短整型相乘,会出错的,加了字符”L“后,就变成1个短整形和1个长整形相乘了,就不会出现数据自动转换出错的现象了。 再来说说电容表吧,电容表是...

    modbus通信协议

    当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit字节都作为两个ASCII字符发送。这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。 代码系统 • 十六进制,...

    高效算法:竞赛、应试与提高必修128例.[法] Christoph Dürr Jill-Jênn Vie(带书签文字版).pdf

    11 4 k 个整数之和 146 第 12 章 点和多边形 148 12 1 凸包问题 149 12 2 多边形的测量 150 12 3 最近点对 151 12 4 简单直线多边形 153 第 13 章 长方形 156 13 1 组成长方形 156 13 2 网格中的最大正方形 157 13 3...

    易语言程序免安装版下载

     支持静态链接其它编程语言(如C/C++、汇编等)编译生成的静态库(.LIB或.OBJ),但仅限于COFF格式,支持cdecl和stdcall两种函数调用约定。  使用说明如下:函数声明和调用方法与DLL命令一致;“库文件名”以.lib...

    Excel 2010函数应用速查手册

    源文件:光盘\源文件\03\032.xlsx 用例21:求不同单价下的利润(MMULT) 源文件:光盘\源文件\03\033.xlsx 用例22:设计工资条(MOD) 源文件:光盘\源文件\03\023.xlsx 用例23:计算50~60之间的整数相乘的结果...

Global site tag (gtag.js) - Google Analytics