第四节(基本类型的转换)

/*
    关于Java语言中的整形数据:

    byte  1byte(8bit) -128 ~ 127
    short 2byte
    int   4byte
    long  8byte

    整数型有三种表示方式
    1. 十进制
    2. 八进制 以0开头
    3. 十六进制 以0x开头

*/
public class DataTypeTest01{

    public static void main(String[] args){

        // 十进制
        int i = 10; // 常用类型

        // 八进制
        int j = 010;

        // 十六进制
        int k = 0x10;

        System.out.println("i = "+i);
        System.out.println("j = "+j);
        System.out.println("k = "+k);

        // 将一个int类型 100字面值赋值给m变量
        int m = 100;
        // 将int类型 150字面值赋值给 long类型的n
        // int类型的容量小于long类型
        // 默认已经存在数据类转换,只不过是“自动类型转换”
        long n = 150;
     // 由于出现了“L” 就会把160看成long类型
        // 以下程序不存在类型转换,只是一个普通的赋值运算
        long x = 160L;
        // 可以将 int类型 转换成 long类型 “自动类型转换”
        long y = 234233633; // 如果int类型的值小于2^31 - 1
        // 什么时候使用"L"或者“l”,建议使用“L”
        // 如果该数值大于 2^31-1就用L 并且是 long类型
        long t = 8797979L;
        System.out.println("L = " + t);
    }
}
/*
    byte 类型
*/
public class DataTypeTest02{

    public static void main(String[] args){

        long i = 1000L;

        // 不能自动类型转换
        // 需要强制类型转换,添加强制类型转换符()
        // 添加(int)后,编译通过了,但是程序在运行阶段可能损失精度,所以一定要谨慎使用
        // 大容量long 像小容量转换,需要强制类型转换
        int j = (int)i;

        // byte 取值范围(-128 ~ 127)只要不超出范围
        byte k = 10;
        byte m = 127;

        // byte n = 128; 错误写法 超出范围

        // short 取值范围(-32768 ~ 32767)
        short x = 23423;

        // char 取值范围(0 ~ 65535)
        // 总结:如果整数没有超出byte,short,char取值范围,可以直接将这个整数赋值给byte,short,char
        char y = 90;
        char u = 65535;

        int v = 58787;

        char w = (char)v;

        System.out.println("j = " + j + " u = " + u + "w = " + w);

    }

}
/*
    关于 浮点型
    float 4个字节
    double 8个字节

*/
public class DataTypeTest03{

    public static void main(String[] args){

        double i = 1.2;

        // 强制类型转换
        float y = (float)i;

        // 自动赋值运算符
        float x = 1.2F;

        System.out.println("i = " + i + " y = " + y + " x = " + x);

    }

}
/*
    java中的布尔类型
    1. 只有两个值:true/false 没有0和1
    2. 主要用在 逻辑运算符和条件控制语句中

*/
public class DataTypeTest04{

    public static void main(String[] args){

        //boolean i = 1;

        boolean sex = true;

        if(sex){
            System.out.println("男人");
        } else {
            System.out.println("女人");
        }

        System.out.println("sex = " + sex);

    }

}
/*
    byte,short,char做混合运算的时候,需要先各自转换成int在做运算
*/
public class DataTypeTest05{

    public static void main(String[] args){

        byte i = 10;

        short j = 20;

        int k = i + j ;

         byte m = (byte)(i + j);

        System.out.println("k = " + k + "m = " + m);

        /*
            java程序在运行的时候分两个时期
            1. 编译期
            2. 运行期

            在编译阶段只是知道 i+j 是int类型
            int 类型无法直接赋值给 byte类型
        */

        byte n = 100;

    }

}
时间: 2024-10-16 00:21:25

第四节(基本类型的转换)的相关文章

c++第十四章-(类型强转换)

类型强转换有2种. class Company { public: Company(std::string theName,std::string theProduct); virtual void printInfo(); protected: std::string name; std::string product; }; Company::Company(std::string theName,std::string theProduct) { this->name = theName;

Scala入门到精通——第二十四节 高级类型 (三)

作者:摆摆少年梦 视频地址:http://blog.csdn.net/wsscy2004/article/details/38440247 本节主要内容 Type Specialization Manifest.TypeTag.ClassTag Scala类型系统总结 在scala中,类(class)与类型(type)是两个不一样的概念.我们知道类是对同一类型数据的抽象,而类型则更详细. 比方定义class List[T] {}, 能够有List[Int] 和 List[String]等详细类型

第三百三十四节,web爬虫讲解2—Scrapy框架爬虫—Scrapy爬取百度新闻,爬取Ajax动态生成的信息

第三百三十四节,web爬虫讲解2-Scrapy框架爬虫-Scrapy爬取百度新闻,爬取Ajax动态生成的信息 crapy爬取百度新闻,爬取Ajax动态生成的信息,抓取百度新闻首页的新闻标题和rul地址 有多网站,当你浏览器访问时看到的信息,在html源文件里却找不到,由得信息还是滚动条滚动到对应的位置后才显示信息,那么这种一般都是 js 的 Ajax 动态请求生成的信息 我们以百度新闻为列: 1.分析网站 首先我们浏览器打开百度新闻,在网页中间部分找一条新闻信息 然后查看源码,看看在源码里是否有

第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理

第三百六十四节,Python分布式爬虫打造搜索引擎Scrapy精讲-elasticsearch(搜索引擎)的mapping映射管理 1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字段的类型以及相关属性elasticsearch会根据json源数据的基础类型猜测你想要的字段映射,将输入的数据转换成可搜索的索引项,mapping就是我们自己定义的字段数据类型,同时告诉elasticsearch如何索引数据以及是否可以被搜索 作用:会让索引建立的更加细致和完善 类型:静态映射和动态

第四章 复合类型

第四章  复合类型 4.1  数组 4.1.1  数组简介 数组(array)是一种数据格式,能够存储多个同类型的值. 声明数组的通用格式如下: typeName arrayName[arraySize]; 表达式arraySize指定数组的元素数目,它只能是以下三种情况之一: 1)        整型常数(如10,枚举值也可以): 2)        const值 3)        常量表达式(如8 * sizeof(int)) 注意:使用数组要注意下标的正确.编译器不会检查使用的下标是否有

【读书笔记】C#高级编程 第七章 运算符和类型强制转换

(一)运算符 类别 运算符 算术运算符 + - * / % 逻辑运算符 & | ^ ~ && || ! 字符串连接运算符 + 增量和减量运算符 ++ -- 移位运算符 << >> 比较运算符 == != < > <= >= 赋值运算符 = += -= *= /= %= &= |= ^= <<= >>= 成员访问运算符(用于对象和结构) . 索引运算符(用于数组和索引器) [] 类型转换运算符 () 条件

javascript 操作符类型隐性转换

(一).一元操作符只能操作一个值的操作符叫做一元操作符1.递增和递减操作符a. 在应用于一个包含有效数字字符的字符串时,先将其转换为数字值,再执行加减1的操作.字符串变量变成数值变量.eg: var a='1'; ++a;  //a 变成2b.在应用于一个不包含有效数字字符的字符串时,将变量的值设置为NaN,字符串变量变成数值变量.eg:var a='1aa';++a  //a 变成NaNc:在应用于布尔值false时,先将其转换为0再执行加减1的操作.布尔值变量变成数值变量.eg:var a=

VUE2.0实现购物车和地址选配功能学习第四节

第四节 v-on实现金额动态计算 用¥金额 进行格式处理,可以使用原生js进行转换,但是在vuei,使用filter过滤器更加方便 注: 1.es6语法=>和import等 好处在于res参数后的function函数内的this作用域,不弄在外部声明变量了. methods:{ cartView:function(){ let _this=this; this.$http.get("data/cartData.json",{"id":123}).then( r

python 四种数值类型(int,long,float,complex)介绍

Python支持四种不同的数值类型,包括int(整数)long(长整数)float(浮点实际值)complex (复数),本文章向码农介绍python 四种数值类型,需要的朋友可以参考一下. 数字数据类型存储数值.他们是不可改变的数据类型,这意味着改变数字数据类型的结果,在一个新分配的对象的值.Number对象被创建,当你给他们指派一个值.例如: var1 = 1 var2 = 10 您也可以删除数字对象的参考,使用del语句.del语句的语法是: del var1[,var2[,var3[..

2014年度辛星css教程夏季版第四节

接下来的这一节我计划讲解的是超链接和列表的样式,然后我们做出一个导航栏出来,其实导航栏是非常常见的,但是我们这里做得这个有点并不那么完善,等我们学完了css之后再完善它. **************超链接************* 1.我们讲伪类的时候已经讲到了,一个超链接可以有link(正常状态).visited(已经访问过).hover(获得鼠标焦点)active(被鼠标点击中)这样四个状态,我们前面也分别设置过不同的颜色了,使用选择器:伪类的形式. 2.我们还可以使用background