零基础 快速学Java韩顺平 p35-51 变量数据类型(整型,浮点,字符,布尔)重要编码,API文档

Posted karshey

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了零基础 快速学Java韩顺平 p35-51 变量数据类型(整型,浮点,字符,布尔)重要编码,API文档相关的知识,希望对你有一定的参考价值。

课程
p35-51

变量

变量是程序的基本组成单位
变量有三个基本要素:类型,名称,值

变量相当于内存中一个数据存储空间的表示,通过变量名可以访问变量(值)。

四个常用数据类型:int double char String
String的S要大写

public class temp{
    public static void main(String[] args){
        int age = 30;
        double score = 99.9;
        char gender = '男';
        String name = "King";
        System.out.println(age);
    }
}

注意:

  • 变量表示内存中的一个存储区域,不同变量占的大小不同。
  • 变量先声明后使用。
  • 三要素:数据类型+变量名+值。
  • 值可以变,变量名不可重复。

跟C++一样惹

加号
左右两边是数值,做加法运算。
左右双方有一方是字符串,则作拼接
从左到右。

System.out.println("100"+98);//10098
System.out.println(100+3+"Hello");//103Hello 前做加法,加完了就做拼接
System.out.println("hello"+100+3);//Hello1003 从一开始就是拼接了

数据类型



String在class里讲。

整数类型


固定范围和字段长度不受操作系统的影响,比如:byte在Windows,Mac,Linux上的范围都是-128-127,都是一个字节。
声明long常量需要加l或L

public class temp{
    public static void main(String[] args){
        long number = 100L;
        System.out.println(number);
    }
}
//输出100

浮点类型

表示小数。


声明float要在小数后加f或F
double更精确

关于声明float的示范:

public class temp{
    public static void main(String[] args){
 //       float number = 1.1;//错的 1.1是double 放进float会精度丢失
        float number = 1.1F;//对的
        System.out.println(number);
    }
}

一个浮点数的陷阱

public class temp{
    public static void main(String[] args){
        double num1 = 2.7;
        double num2 = 8.1/3;
        System.out.println(num1);
        System.out.println(num2);
    }
}


8.1/3不是2.7;因此,判断两个浮点数是否相等不能用等于号,而是判断它们的差的绝对值是否在某个范围内(当浮点数参与了运算会产生精度的误差)
如:

public class temp{
    public static void main(String[] args){
        double num1 = 2.7;
        double num2 = 8.1/3;
        // System.out.println(num1);
        // System.out.println(num2);
        if(Math.abs(num1-num2)<0.001){
            System.out.println("相等");
        }
    }
}


如果是直接查询得的小数或者是直接赋值,可以用等号判断相等

字符类型

字符类型表示单个字符,字符类型是char,两个字节,可以放汉字。
多个字符用String;

如:

char c1='a';
char c2='\\t';
char c3='好';

char可以存数字,它表示的是这个数字所对应的unicode码的字符:

public class temp{
    public static void main(String[] args){
        char c1 = 90;
        System.out.println(c1);
        }
    }
//输出Z


即:

  • 单引号’’
  • 可用转义字符
  • 本质是整数,是Unicode码对应的字符(所以输入整数输出字符)
  • 可运算
public class temp{
    public static void main(String[] args){
        //关于char的本质是整数
        char c1 = 'a';
        System.out.println(c1);
        System.out.println((int)c1);
        }
    }

输出:

a
97

Unicode编码可以汉字:

public class temp{
    public static void main(String[] args){
        //关于char的本质是整数
        char c1 = '唐';
        System.out.println(c1);
        System.out.println((int)c1);
        }
    }

输出:

21776


utf-8在实际开发中用的多(字母只用一个字节,不浪费空间;汉字用三个字节,可以表示的范围大)

布尔类型


即:

  • boolean
  • 只有true和false
  • 1个字节
  • 适于逻辑运算
  • 用于流程控制

于C不同,不可以用0或非0的数字表示false和true

重要编码(了解)

  • ASCII码 (不能表示所有字符)
  • Unicode(世界上所有符号都有,无乱码问题,但英文中文都是2个字节,浪费存储空间,Unicode兼容ASCII)
  • utf-8 (在互联网上用的最广的一种Unicode实现方式(改进),是一种变长的编码方式,字母1字节,汉字3字节)

Java API文档

API,Application Programming Interface,应用程序编程接口,是Java提供的基本编程接口。

一个API工具:网址
Java 8

以上是关于零基础 快速学Java韩顺平 p35-51 变量数据类型(整型,浮点,字符,布尔)重要编码,API文档的主要内容,如果未能解决你的问题,请参考以下文章

零基础 快速学Java韩顺平 p62-80 运算符:算数关系逻辑赋值三元和优先级

韩顺平循序渐进学Java零基础

零基础 快速学Java韩顺平 p52-59 基本数据类型转换(自动强制)与String类型的转换

零基础 快速学Java韩顺平 p20-26 快速掌握技术转义字符易犯错误注释代码规范

零基础 快速学Java韩顺平 p82-86 标识符的命名规则和规范关键字保留字键盘输入

韩顺平循序渐进学Java零基础 第10章 面向对象编程(高级部分)