火眼金睛看Java基本类型(下) | 带你学《Java编程入门》之三

简介: 程序是一套数字处理的游戏框架,也就是说在整个程序开发的过程中,所达到的最终目的就是对一些数据的处理过程。那么既然要进行数据的处理,就一定需要提供有各种类型的数据定义。

上一篇:带你学《Java编程入门》之三:火眼金睛看Java基本类型(上)
【本节目标】
看完本章你需要知道Java数据分类,本章重点讲述浮点型、字符型、布尔型数据类型以及String字符串,转义字符,利用案例帮助更快学习这些数据类型吧。

3.3 浮点型数据

浮点型数据描述的是小数,而在Java里面,任意的一个小数常量,其对应的类型为double,所以在以后描述小数的时候都建议直接使用double来进行定义。
范例:定义double变量

public class JavaDemo {
public static void main(String args[]) {
        // 10.2是一个小数其对应的类型为double
        double x = 10.2 ;
        int y = 10 ;
        // double类型 * int类型 = double类型
        double result = x * y ;
        System.out.println(result) ;    //102.0
    }
}

所有的数据类型进行自动转型的时候都是由小类型向大类型进行自动的转换处理。默认的类型为double,但是也可以定义位数相对较少的float变量,此时从赋值的时候就必须采用强制类型转换。
范例:定义float变量

public class JavaDemo {
    public static void main(String args[]) {
        float x = (float) 10.2 ;
        float y = 10.1F ;
        System.out.println(x * y) ;    // float型,103.02
    }
}

通过一系列的代码分析可以发现,整型是不包含有小数点的,而浮点型是包含小数点的。
范例:观察一个程序

public class JavaDemo {
    public static void main(String args[]) {
        int x = 10 ;
        y = 4;
        System.out.println(x / y) ;    
    }
}

此时计算结果为2,得到2的主要原因在于:整型是不保存有小数点的,所以现在的计算结果为“2.5”,那么抛开小数点不看,最终的结果只是2,如果现在想得到所需要的正确的计算,那么就需要我们的转型处理。
范例:数据转型

public class JavaDemo {
    public static void main(String args[]) {
        int x = 10 ;
        y = 4;
        System.out.println((double)x / y) ;    
    }
}

在以后计算的时候千万注意你选择的数据类型,将直接决定小数点的问题,这一点至关重要。

3.4 字符型数据

字符型使用的是char进行定义的,在Java之中使用“’”定义的内容就是一个字符。
范例:定义一个字符型变量

public class JavaDemo {
    public static void main(String args[]) {
        char c = 'B' ; // 一个字符变量
        System.out.println(c) ;     //输出B
    }
}

在任何编程语言之中,字符都可以与int进行互相转换,也就是说,字符中所描述的内容可以通过int来获取其内容对应的系统编码。
范例:观察char与int的关系

public class JavaDemo {
    public static void main(String args[]) {
        char c = 'A' ; // 一个字符变量
        int num = c ;    // 可以获得字符的编码
        System.out.println(num) ;      //65
    }
}

对于以上的程序获得了编码,这里面有几个范围需要注意一下:
“大写字母范围”:A(65)~Z(90);
“小写字母范围”:a(97)~z(122);
“数字范围”:’0’(48)~ ’9’(57);
通过编码范围可以发现大小写字母之间差了32个数字的长度,在这样的情况下就可以实现一个大小写的转换处理。
范例:将小写字母变为大写字母

public class JavaDemo {
    public static void main(String args[]) {
        char c = 'x' ; // 一个字符变量
        int num = c ;    // 可以获得字符的编码
       num = num – 32 ;  //让自己的内容减少32
        System.out.println((char)num) ;      //结果:X
    }
}

到此为止所有的操作都与传统的C语言的方式是一样的,但是需要注意的是,在Java里面char主要是进行中文处理,所以,一定要记住,Java中的char类型可以保存中文数据。
范例:保存中文数据

public class JavaDemo {
    public static void main(String args[]) {
        char c = '仁' ; // 一个字符变量
        int num = c ;    // 可以获得字符的编码
        System.out.println(num) ;
    }
}

之所以在Java语言里面可以使用char进行中文数据的保存,是因为Java使用的是Unicode这种十六进制的编码。主要特点是:可以包括任意的文字内容,所以使得程序开发变得更加的简单。

3.5 布尔数据

布尔是一位数学家的名字,布尔主要描述的是一种逻辑的处理结果,在Java中使用boolean来进行布尔类型的变量定义。需要注意的是,布尔类型的取值范围只有两个数据:true、false
范例:定义布尔型数据

public class JavaDemo {
    public static void main(String args[]) {
        boolean flag = true ;
        if (flag) {    // 判断flag的内容,如果是true就执行
            System.out.println("我很帅,我很年轻!") ;
        }
    }
}

但是需要说明一点,像有一些编程语言由于没有提供有布尔类型,所以会使用0表示false,非0表示true,这样的逻辑在Java之中是不存在的。

3.6 String字符串

在任何语言里面都没有提供所谓的字符串这种基本数据类型,但是从实际的使用上来讲各个编程语言为了方便程序的开发也都会提供有字符串的相应描述。在Java里面使用的是String作为字符串的定义。
由于String类的存在较为特殊,所以可以像普通变量那样采用直接赋值的方式进行字符串的定义,并且要求使用“”””进行字符串描述。
范例:定义一个字符串

public class JavaDemo {
    public static void main(String args[]) {
        String str = "Hello World !" ;    // 使用“"”进行描述
        System.out.println(str) ;       //执行结果:Hello World !
    }
}

在进行字符串变量使用的时候也可以使用“+”来进行字符串的连接处理。
范例:实现字符串连接

public class JavaDemo {
    public static void main(String args[]) {
        String str = "Hello" ;    // 使用“"”进行描述
        str = str + " World" ; // 字符串连接
        str += " !!!" ;        // 字符串连接
        System.out.println(str) ;   //执行结果:Hello World !!!
    }
}

但是需要考虑另外一点,此时对于“+”就有了两种描述:字符串的连接、数字的加法计算。那么下面来观察一个程序。
范例:观察“+”的问题

public class JavaDemo {
    public static void main(String args[]) {
        double x = 10.1 ;
        int y = 20 ;
        String str = "计算结果:" + x + y ;
        System.out.println(str) ;   //执行结果:10.120
    }
}

在Java语言里面,数据范围大的数据类型与数据范围小的数据类型进行计算的时候,所有范围小的数据类型自动转型为范围大的数据类型,但是如果此时有String字符串了,则所有的类型无条件先变为String。

public class JavaDemo {
    public static void main(String args[]) {
        double x = 10.1 ;
        int y = 20 ;
        String str = "计算结果:" + (x + y) ;
        System.out.println(str) ;    //执行结果:30.1
    }
}

3.7 转义字符

在描述字符串的时候也可以使用转义字符进行一些处理,例如:TAB(t)、”(”)、’(’)、换行(n)、(\)。
范例:观察转义字符
代码块1:

public class JavaDemo {
    public static void main(String args[]) {
        System.out.println(“Hello World !!! \nHello MLDN!”) 
    }
}

image.png
图三 代码块1运行结果

代码块2:

public class JavaDemo {
    public static void main(String args[]) {
        System.out.println(“Hello World !!! \nHello \”MLDN\”!”) 
    }
}

image.png
图四 代码块2运行结果

代码块3:

public class JavaDemo {
    public static void main(String args[]) {
        System.out.println(“\tHello World !!! \nHello \”MLDN\”!”) 
    }
}

image.png
图五 代码块3运行结果

这些字符是可以在学习的过程中进行一些简单的格式化显示处理。
想学习更多的Java的课程吗?从小白到大神,从入门到精通,更多精彩不容错过!免费为您提供更多的学习资源。
本内容视频来源于阿里云大学
下一篇:带你学《Java编程入门》之四:带你领略Java运算符之美
更多Java入门编程文章查看此处

相关文章
|
4天前
|
设计模式 安全 Java
Java编程中的单例模式:理解与实践
【10月更文挑战第31天】在Java的世界里,单例模式是一种优雅的解决方案,它确保一个类只有一个实例,并提供一个全局访问点。本文将深入探讨单例模式的实现方式、使用场景及其优缺点,同时提供代码示例以加深理解。无论你是Java新手还是有经验的开发者,掌握单例模式都将是你技能库中的宝贵财富。
12 2
|
7天前
|
Java API Apache
Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
【10月更文挑战第29天】Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
35 5
|
2天前
|
安全 Java 编译器
JDK 10中的局部变量类型推断:Java编程的简化与革新
JDK 10引入的局部变量类型推断通过`var`关键字简化了代码编写,提高了可读性。编译器根据初始化表达式自动推断变量类型,减少了冗长的类型声明。虽然带来了诸多优点,但也有一些限制,如只能用于局部变量声明,并需立即初始化。这一特性使Java更接近动态类型语言,增强了灵活性和易用性。
78 53
|
1天前
|
安全 Java 编译器
Java多线程编程的陷阱与最佳实践####
【10月更文挑战第29天】 本文深入探讨了Java多线程编程中的常见陷阱,如竞态条件、死锁、内存一致性错误等,并通过实例分析揭示了这些陷阱的成因。同时,文章也分享了一系列最佳实践,包括使用volatile关键字、原子类、线程安全集合以及并发框架(如java.util.concurrent包下的工具类),帮助开发者有效避免多线程编程中的问题,提升应用的稳定性和性能。 ####
18 1
|
5天前
|
存储 设计模式 分布式计算
Java中的多线程编程:并发与并行的深度解析####
在当今软件开发领域,多线程编程已成为提升应用性能、响应速度及资源利用率的关键手段之一。本文将深入探讨Java平台上的多线程机制,从基础概念到高级应用,全面解析并发与并行编程的核心理念、实现方式及其在实际项目中的应用策略。不同于常规摘要的简洁概述,本文旨在通过详尽的技术剖析,为读者构建一个系统化的多线程知识框架,辅以生动实例,让抽象概念具体化,复杂问题简单化。 ####
|
3天前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
6天前
|
Java 开发者
在Java多线程编程的世界里,Lock接口正逐渐成为高手们的首选,取代了传统的synchronized关键字
在Java多线程编程的世界里,Lock接口正逐渐成为高手们的首选,取代了传统的synchronized关键字
31 4
|
6天前
|
消息中间件 供应链 Java
掌握Java多线程编程的艺术
【10月更文挑战第29天】 在当今软件开发领域,多线程编程已成为提升应用性能和响应速度的关键手段之一。本文旨在深入探讨Java多线程编程的核心技术、常见问题以及最佳实践,通过实际案例分析,帮助读者理解并掌握如何在Java应用中高效地使用多线程。不同于常规的技术总结,本文将结合作者多年的实践经验,以故事化的方式讲述多线程编程的魅力与挑战,旨在为读者提供一种全新的学习视角。
28 3
|
4天前
|
设计模式 安全 Java
Java编程中的单例模式深入解析
【10月更文挑战第31天】在编程世界中,设计模式就像是建筑中的蓝图,它们定义了解决常见问题的最佳实践。本文将通过浅显易懂的语言带你深入了解Java中广泛应用的单例模式,并展示如何实现它。
|
9天前
|
存储 安全 Java
🌟Java零基础-反序列化:从入门到精通
【10月更文挑战第21天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
40 5
下一篇
无影云桌面