数值运算的问题

问题描述

short i = 1,j = 1;i = i+j;哪里错了?

解决方案

i和j虽然都是short类型,但是他两个相加后可能超过short类型的最大值所以jdk里将两个short类型相加的值认为是int型i=i+j相当于将int型转换为short型,如果要转换,必须使用显示强制类型i=(short)(i+j);

时间: 2024-10-30 17:26:50

数值运算的问题的相关文章

Hive常用运算(关系运算)、逻辑运算与数学运算、数值运算、日期函数、条件函数、字符串函数

hive 常用运算 第一部分:关系运算 Hive支持的关系运算符 •常见的关系运算符 •等值比较: = •不等值比较: <> •小于比较: < •小于等于比较: <= •大于比较: > •大于等于比较: >= •空值判断: IS NULL •非空判断: IS NOT NULL •LIKE比较: LIKE •JAVA的LIKE操作: RLIKE •REGEXP操作: REGEXP •等值比较: =    语法:A=B 操作类型:所有基本类型 描述: 如果表达式A与表达式B

数值运算shell脚本_linux shell

这次的shell案例比较简单,但有其特点. #!/bin/sh # scriptbc - Wrapper for 'bc' that returns the result of a calculation. if [ $1 = "-p" ] ; then precision=$2 shift 2 else precision=2 # default fi bc -q << EOF scale=$precision $* quit EOF exit 0 脚本特点: 1) 脚本

shell命令进行算术/数值运算的方法总结

shell中的变量都是以字符串的形式保存的,即使你赋值的时候给的是整形值,除非你通过declare -i来声明变量. 在进行数值/算术运算的时候,你可能会发现下面的情况 $ x=121 $ echo $x+1 121+1 定义变量x,并赋值一个整形的变量,可是echo $x+1的结果却不是我们想要的122,而是121+1.这是因为$x+1并没有被当做算术运算,而是简单的字符串的运算导致. 那如何在shell中进行数值/算术运算呢?(以下使用的shell为bash shell) 方法一:let命令

PostgreSQL 用CPU &quot;硬解码&quot; 提升1倍 数值运算能力 助力金融大数据量计算

PostgreSQL 支持的数字类型包括整型,浮点,以及PG自己实现的numeric数据类型. src/backend/utils/adt/numeric.c src/backend/utils/adt/float.c numeric可以存储非常大的数字,超过2^17次方个数字长度.提升了精度的同时,也带来了性能的损耗,不能充分利用CPU 的 "硬解码"能力. typedef struct NumericVar { int ndigits; / # of digits in digit

F#教程-数值处理

这次,我们学习下数值运算.首先请看如下代码: #light let x = 10.0 + 12.0 - 3.0 let y = x * 2.0 + 1.0 let r = x/3.0 printfn "x = %g, y = %g, r = %g" x y r 对于这段代码几乎没有什么必要说明.因为运算符号同C#是一致的. #light let x = 4 + 6 - 3 let y = x * 2 + 1 let q = x / 3 let r = x % 3 printfn &qu

震精 - PostgreSQL decimal64 decimal128 高效率数值 类型扩展

标签 PostgreSQL , decimal64 , decimal128 , float4 , float8 , numeric 背景 PostgreSQL内置的数值类型包括 整型.浮点.整型序列."无限"精度数值 Name Storage Size Description Range smallint 2 bytes small-range integer -32768 to +32767 integer 4 bytes typical choice for integer -2

《Arduino开发实战指南:LabVIEW卷》——3.4 LabVIEW的数据类型及运算

3.4 LabVIEW的数据类型及运算 3.4.1 数据类型 LabVIEW的控件按其传递的数据类型可分为字符串型.数值型.布尔型.数组.簇.枚举等:按作用范围又可分为局部变量和全局变量. 1.字符串型 字符串控件是字符串数据的容器,字符串控件的值属性是字符串.如同其他类型控件一样,LabVIEW的字符串控件也分为输入控件和显示控件.输入控件的值可以由用户通过鼠标或者键盘来改变,而显示控件则不允许用户直接输入,只能通过数据流的方式,显示字符串信息.字符串及路径(String & Path)控件选

PowerShell中的加法运算详解_PowerShell

大家已经PowerShell中的运算符有了一定感性的认识.我们首先来学习"+"运算符.PowerShell定义了"+"运算符处理数值类型.字符串类型.数组类型和哈希表类型的具体行为.在进行数值计算时,"+"和平时的数值计算规则基本一样.不过需要注意,由于计算机内部表示不同数值类型时,使用的存储空间不同,因此这些类型都只能表示一个范围内的数据.在进行数值运算的过程中,如果计算结果超过了参与计算数值类型的值域时,PowerShell将会自动进行类型转

PHP采用超长(超大)数字运算防止数字以科学计数法显示的方法_php技巧

本文实例讲述了PHP采用超长(超大)数字运算防止数字以科学计数法显示的方法.分享给大家供大家参考,具体如下: PHP计算大数值运算时会出错,当数字太大时,数值会变成科学计数.那怎么来进行PHP超大数值运算,包括加减乘除,幂运算,平方根,取模运算呢? 要解决科学计数的问题,只要赋值时加一对引号即可. 如: <?php $n = '22222222222222222222222222220'; echo $n; ?> 如果不加引号,显示2.2222222222222E+28,加引号后显示22222