精华内容
下载资源
问答
  • byte、 char、 short 、int、 long、 float、 double 、boolean下面列出以下四种数据类型及其取值范围:本文主要讲述,在java中,在写程序时,直接给long赋值的问题:有上述范围可知,long类型范围:-2^63 ~2^63-1...

    在java中,我们都知道有八种基本数据类型:byte、 char、 short 、int、 long、 float、 double 、boolean

    下面列出以下四种数据类型及其取值范围:

    e4423f56ca623a9d226173d2aff95efd.png

    本文主要讲述,在java中,在写程序时,直接给long型赋值的问题:

    有上述范围可知,long类型范围:-2^63 ~2^63-1,程序如下:

    long  testLong = 1000000 * 60 * 36;  //编译通过

    long  totalLong = 2160000000;        //编译出错,提示"The literal 2160000000 of type int is out of range"

    同样的数值,只是一个直接赋值,一个用*运算符连接,具体原因不再细说:编译器会在运行时计算*

    而将上述出错的改为下述代码即可,添加long的后缀L(大小写无所谓,但是建议大写)

    long  totalLong = 2160000000L;    //编译通过

    为什么呢???参考上述long型范围,2160000000并未超出其范围?

    原因是:在Java代码中直接书写的数字是int类型的,就是说数字的范围在 -2^31 到 2^31 - 1 这个范围之中,无论将这个数字赋值给什么类型。同样,float、double类型在书写上同理,若正确显示需加上相应的后缀F、D;否则在超出int范围时,编译出现上述错误"The literal 2160000000 of type int is out of range"

    说明:本文是参考http://www.2cto.com/kf/201305/209699.html整理的,再次感谢!!!

    展开全文
  • 类型语言,即Strongly Typed Language,从...2、变量赋值时,或者方法返回值时,必须类型兼容2.1、相同类型之间赋值合法例如,下面的赋值是合法的:2.2 null可以赋值给任何引用类型例如,下面的赋值是合法的:...
    a62ef56267f91e102ee4a4990478ebbe.png

    强类型语言,即Strongly Typed Language,从字面上理解,就是Java语言对类型要求很严格。

    Java语言对类型要求有哪些呢?

    1、变量必须先声明类型,然后使用

    例如:

    int i;Object object;i = 12;

    2、给变量赋值时,或者方法返回值时,必须类型兼容

    2.1、相同类型之间赋值合法

    例如,下面的赋值是合法的:

    0c5a2af2ec6851c55c6469b513140e3d.png

    2.2 null可以赋值给任何引用类型

    例如,下面的赋值是合法的:

    6cdf7d2753f65b39424c57254afe3f71.png

    2.3 byte类型的值可以赋值给short、int、long、float、double类型

    例如,下面的赋值是合法的:

    0ae6a84956fead7493399c019a1cbbcf.png

    2.4 short类型的值可以赋值给int、long、float、double类型

    例如,下面的赋值是合法的:

    772f1325a345ca092f31597eea2584a6.png

    2.5 int类型的值可以赋值给long、float、double类型

    例如,下面的赋值是合法的:

    becda263341a4aaf237e7624ddbd3311.png

    2.6 long类型的值可以赋值给float、double类型

    例如,下面的赋值是合法的:

    847f0a65a9a6da87a0b80acc9ac908d0.png

    2.7 float类型的值可以赋值给double类型

    例如,下面的赋值是合法的:

    b7d9ec8047a93e705e17e5411374ab80.png

    2.8 引用类型之间赋值,子类可以赋值给超类

    例如,下面的赋值是合法的:

    5f1f1d82744a619f40228518d2fc76a3.png

    3、强制类型转换(cast)

    3.1 强制类型转换的语法

    强制类型转换的语法是:

    Type1 type1Value = (Type1)type2Value;

    3.2 下面的基本类型赋值不合法

    下面基本类型之间直接赋值不合法:

    (1)doube向float、long、int、short、byte类型赋值;

    (2)float向long、int、short、byte类型赋值;

    (3)long向int、short、byte类型赋值;

    (4)int向short、byte类型赋值;

    (5)short向byte类型赋值;

    例如,下面的赋值不合法,编译不能通过:

    42e9b52b9574538df997e5397715853f.png

    3.3 用整型常量给整型变量赋值时,常量不能超过该整型类型的取值范围

    例如,给byte类型赋值0xA0,编译不能通过:

    c9dc52907b5984c49dcfb47af781d61a.png

    3.4 不能用double型常量给float类型变量赋值

    例如,下面的代码编译不能通过:

    eaac170fc72a56a2fca72fd3787a242a.png

    3.5 基本类型赋值时,如果类型不能兼容,可以使用强制类型转换(但是精度和值可能会受影响)

    例如,下面的代码可以编译通过:

    4a9c4fb801f2c67ab141e0011f5a80a0.png

    4、为了防止引用类型在强制类型转换时抛出CastException异常,可以先使用instanceof进行类型判断

    例如,下面的代码可以确保不会抛出CastException异常:

    5172520d8711c790c6acee494b7db17c.png
    展开全文
  • java中,我们都知道有八种基本数据类型:byte、 char、 ...本文主要讲述,在java中,在写程序时,直接给long赋值的问题: 有上述范围可知,long类型范围:-2^63 ~2^63-1,程序如下: long testLong = 1000000 *...

    在java中,我们都知道有八种基本数据类型:byte、 char、 short 、int、 long、 float、 double 、boolean

    下面列出以下四种数据类型及其取值范围:

    本文主要讲述,在java中,在写程序时,直接给long型赋值的问题:

    有上述范围可知,long类型范围:-2^63 ~2^63-1,程序如下:

    long  testLong = 1000000 * 60 * 36;  //编译通过

    long  totalLong = 2160000000;        //编译出错,提示"The literal 2160000000 of type int is out of range"

    同样的数值,只是一个直接赋值,一个用*运算符连接,具体原因不再细说:编译器会在运行时计算*

    而将上述出错的改为下述代码即可,添加long的后缀L(大小写无所谓,但是建议大写)

    long  totalLong = 2160000000L;    //编译通过

    为什么呢???参考上述long型范围,2160000000并未超出其范围?

    原因是:在Java代码中直接书写的数字是int类型的,就是说数字的范围在 -2^31 到 2^31 - 1 这个范围之中,无论将这个数字赋值给什么类型。同样,float、double类型在书写上同理,若正确显示需加上相应的后缀F、D;否则在超出int范围时,编译出现上述错误"The literal 2160000000 of type int is out of range"

    说明:本文是参考http://www.2cto.com/kf/201305/209699.html整理的,再次感谢!!!

     

    转载于:https://www.cnblogs.com/sparrowlhl/p/5807170.html

    展开全文
  • 【背景】折腾:期间,需要搞懂如何使用java中的字典类型的变量。【解决过程】1. 参考:去写出如下代码:private HashMap calcTimeKeyDict;/** start calculate time */public long calcTimeStart(String uniqueKey){...

    【背景】

    折腾:

    期间,需要搞懂如何使用java中的字典类型的变量。

    【解决过程】

    1. 参考:

    去写出如下代码:private HashMap calcTimeKeyDict;

    /** start calculate time */

    public long calcTimeStart(String uniqueKey)

    {

    long startMilliSec = 0;

    startMilliSec = System.currentTimeMillis();

    calcTimeKeyDict.put(uniqueKey, startMilliSec);

    return startMilliSec;

    }

    /** end calculate time */

    public long calcTimeEnd(String uniqueKey)

    {

    long endMilliSec = System.currentTimeMillis();

    long elapsedMilliSec = 0;

    if(calcTimeKeyDict.containsKey(uniqueKey))

    {

    long startMilliSec = (long)calcTimeKeyDict.get(uniqueKey);

    elapsedMilliSec = endMilliSec - startMilliSec;

    }

    return elapsedMilliSec;

    }

    结果,出现警告:

    然后用如下代码:private HashMap calcTimeKeyDict;

    //private Map calcTimeKeyDict;

    /** start calculate time */

    public long calcTimeStart(String uniqueKey)

    {

    long startMilliSec = 0;

    startMilliSec = System.currentTimeMillis();

    calcTimeKeyDict.put(uniqueKey, startMilliSec);

    return startMilliSec;

    }

    /** end calculate time */

    public long calcTimeEnd(String uniqueKey)

    {

    long endMilliSec = System.currentTimeMillis();

    long elapsedMilliSec = 0;

    if(calcTimeKeyDict.containsKey(uniqueKey))

    {

    long startMilliSec = calcTimeKeyDict.get(uniqueKey);

    elapsedMilliSec = endMilliSec - startMilliSec;

    }

    return elapsedMilliSec;

    }

    貌似就可以正常的使用,把HashMap或Map当做Dict类型的变量使用了。

    【总结】

    java中的字典类型变量,就是Map或者HashMap。

    使用方式,也比较像C#中的Dictionary,比如:

    Dictionary

    展开全文
  • 直接给long类型的变量赋值时报错
  • 这样赋值: long secondss=1384865444229; myeclipse报错说,因为在java中直接给数值变量赋值,都默认只能在int范围之类,如果要给long赋值,必须这样写: long secondss=1384865444229L;才不会报错
  • 探究Java中基本类型和部分包装类在声明变量时不赋值的情况下java给他们的默认赋值当基本数据类型作为普通变量(八大基本类型: byte,char,boolean,short,int,long,float,double)只有开发人员对其进行初始化,java不会...
  • 探究Java中基本类型和部分包装类在声明变量时不赋值的情况下java给他们的默认赋值当基本数据类型作为普通变量(八大基本类型: byte,char,boolean,short,int,long,float,double)只有开发人员对其进行初始化,java不会...
  • JAVA中Long 类型建立的时候如果没赋值,会默认一个0.而long类型建立的时候如果没有赋值,则是null! 笔者曾经做添加功能的时候主键id类型设置成long类型,在做数据库添加功能的时候,一直测试失败,纠结了大...
  • 这里我们从更深层次来看看Java如何引用变量赋值:在Java中我们先姑且把数据类型氛围基本数据类型和引用数据类型,那么从下面几个点我来说说Java中的引用数据类型赋值:了解基本数据类型和引用数据类型的基本概念...
  • 不含值的Long类型变量 testA Long类型变量 testB 直接赋值,不会引发异常。 不含值的 String类型变量 strA String类型变量 strB直接赋值,也同样不会引发异常。 以下是个小Demo例子...
  • 短文涨姿势,看了不白看,不关注等啥?咱们先来看一段很简单的Java代码这段代码非常简单,没有任何技术含量。...我们知道,Java语言中有4种整数类型,分别是byte、short、int和long。其中,Java编译器对byte和s...
  • 小UP只分享Java相关的资源干货Java基本数据类型转换Java基本数据类型之间是存在固定的转换规则的,现总结出以下6条规则,无论是哪个程序,将这6个规则套用进去,问题迎刃而解:● 八种基本数据类型中,除boolean类型...
  • java中的基本数据类型只有8个:byte、short、int、long、float、double、char、boolean;除了基本类型,剩下的都是引用类型,java5以后引入的枚举类型也算是一种比较特殊的引用类型。float f = 3.4;是否正确?答: 不正确...
  • 一、基础1、JAVA中能创建volatile数组吗?volatile能使得一个非原子操作变成原子操作吗?2、10个线程和2个线程的同步代码,哪个更...7、我能在不进行强制转换的情况下将一个double值赋值给long类型的变量吗?8、我们...
  • Java 赋值运算符

    2021-04-02 10:05:27
    Java 赋值运算符赋值运算类型转换代码验证示例1:int转变为byte, long示例2:long转变为int示例3:double转变为float示例4:double与float的运算示例5:long型转变为double示例6:long型转变为float表达式的类型括号...
  • 基本数据类型整数类型整数类型有byte、short、int、long。在不同位数的操作系统占用不同的字节。在64位操作系统中,它们分别占1、2、4、8个字节。小数类型小数类型有float和double,在64位操作系统中分别占用4和8个...
  • 我们可以将变量理解为一个“容器”,例如一个空的盒子,变量赋值就相当是我们在向盒子中放东西,变量可以不断的更换值,就像盒子可以反复使用一样。在使用变量之前,需要先声明变量的数据类型,是为了告诉编译器这...
  • 但是,反过来,将 long 类型 赋值给 int 类型,你必须使用强制类型转换。Java类型转换分两种:自动类型转换 – 没有任何的表现形式,Java自动处理强制类型转换 – 需要使用类型转换语法Java的自动转...
  • Java 赋值运算笔记

    2020-11-10 20:04:21
    文章目录运算符子类父类 运算符 java的基本数据类型中的转换从低级到高级 byte,short,char ->...父类类型不能赋值给子类类型,子类类型可以赋值给父类。 子类赋值给父类后,父类的变量值保存的是子类的变量值。 ...
  • 最近在开发android 的jni程序的过程中,遇到一个问题,在jni里回调java层的函数,函数中有一个long类型的参数,后面跟一个int型的参数。在某些条件下,参数传递会出现错误。看个例子: (1)这里有个条件,是在32位...
  • 众所周知,Java 是一门面向对象的编程语言。它最牛逼的地方就在于它是跨平台的,你可以在 Windows 操作系统上编写 Java 源代码,然后在 Linux 操作...基本数据类型用于存储简单类型的数据,比如说,int、long、by...
  • 3:不要把精度单位高的类型赋值给精度低的单位 long l = 0; int i = 0; i = l ;(x) 4:byte 和 short 除外 byte b = 0; short s = 0; 可以直接用整型的字面量赋值 5:整个表达式值的类型是精度
  • Java基础_赋值运算

    2016-09-24 22:46:00
    因为s+1为int类型,int类型赋值给short类型会损失精度 ps:精度变化由小到大为 byte->short->int->long ,反过来就会损失精度 * short s=1;s+=1; 结果为2. +=是一个赋值运算符。可以理解为 (short) s = ...
  • Java基本数据类型

    2021-03-15 12:16:08
    long 表示的范围更大, 可以将 int 赋值给 long, 但是不能将 long 赋值给 int. double 表示的范围更大, 可以将 int 赋值给 double, 但是不能将 double 赋值给 int. int 和 boolean 相互赋值 int 和 boolean 是
  • 答案:java的原始数据类型,也可以叫java的基本数据类型,一共就8个,分别是:byte、short、int、long、boolean、char、float、doublebyte 1个字节boolean 1个字节char 2个字节short 2个字节int 4个字节long...
  • 标题@关于java数据类型long 以下面程序为例说明 public class HelloWorld{ public static void main(String[] args){ long num = 3000000000L; //num赋值30亿 System.out.println("Hello,World!!!"); } }...
  • 原文连接https://lingcoder.github.io/OnJava8/#/book/04-Operators?id=%e8%b5%8b%e5%80%bc这里只是做一个总结对于基本数据类型 (int long byte short char float double boolean)以及String类型赋值会直接赋值一份...
  • 自动拆箱原理:包装类会自动...赋值给基本类型参考:1.https://docs.oracle.com/javase/tutorial/java/data/autoboxing.html2.https://docs.oracle.com/javase/specs/jls/se8/html/jls-5.html#jls-5.1.83.https://d...
  • 1.在计算机系统中,数值一律用二进制的补码来存储。 2.整数类型 Java有四种整数类型:byte,short,int,long. Java默认整数计算的结果是int类型。...EG:将字面量30亿赋值给一个long类型的变量: long longvalue

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 443
精华内容 177
关键字:

java给long类型赋值

java 订阅