一、变量类型分类

一个变量的类型,决定了该变量可以包含什么样的值。

  • Java中有八种基本类型,都是Java语言预先定义好的,并且是关键字。
  • 这八种基本类型分别是: 
    • 整型 (4种)
    • 字符型 (1种)
    • 浮点型 (2种)
    • 布尔型(1种)

二、整型

  • 整型变量用于存放整数
    • byte
    • short
    • int
    • long
  • 区别在于不同类型的整型,最大值,最小值不一样
    • 如果试图给byte类型的变量赋予超出其范围的值,就会产生编译错误,这个时候就需要进行类型转换

public class HelloWorld{

public static void main(String[] args){

byte b = 1;

short s = 200;

int i = 300;

long l = 400;

  /*如果试图给byte类型的变量赋予超出其范围的值,就会产生编译错误*/

      byte b2 = 200;

}

}

三、字符型

  • char类型用于存放一个字符,值用单引号'表示 (双引号表示字符串)
  • 其长度和short一样,也是16位的
  • 只能存放一个字符,超过一个字符就会产生编译错误

public class HelloWorld{

public static void main(String[] args){

char c = '新';

//char 只能存放一个字符,超过一个字符就会产生编译错误

char c2 = '新疆'; //报错

char c3 = 'xj'; //报错

}

}

四、浮点型

  • 浮点数类型有两种 
    • float 长度为32位
    • double 长度为64位 
      • 注意:默认的小数值是double类型的
      • 所以 float f = 54.321会出现编译错误,因为54.321的默认类型是 double,其类型 长度为64,超过了float的长度32
      • 在数字后面加一个字母f,直接把该数字声明成float类型
      • float f2 = 54.321f,
      • 这样就不会出错了

public class HelloWorld{

public static void main(String[] args){

double d = 123.45;

//该行会出现编译错误,因为54.321是double型的

float f = 54.321;

float f2 = 54.321f;

}

}

五、布尔型

  • 布尔型用于表示真假
  • 其长度为1

boolean b1 = true;

boolean b2 = false;

  • 分别代表真假
  • 虽然布尔型真正存放的数据是0(false) 1(true)
  • 但是,不能直接使用0 1 进行赋值

public class HelloWorld {

public static void main(String[] args) {

boolean b1 = true;

boolean b2 = false;

// 虽然布尔型真正存放的数据是0(false) 1(true)

// 但是,不能直接使用0 1 进行赋值

boolean b3 = 1;

}

}

六、String类型

  • String类型其实并不是基本类型,但是它是如此广泛的被使用,常常被误以为是一种基本类型。
  • String类型是Immutable的,一旦创建就不能够被改变,请参考String

public class HelloWorld {

public static void main(String[] args) {

String str = "Hello Java";

}

}

七、练习

题目:

分别为如下值,找到合适的类型来定义

3.14

2.769343

365

12

'吃'

false

"不可描述"

比如3.14就使用double

double a = 3.14;

官方答案:

public class HelloWorld {

public static void main(String[] args) {

double pi = 3.14;

double e = 2.769343;

short days = 365;

byte months = 12;

char chi = '吃';

boolean die = false;

String fucking = "不可描述";

}

}

个人整理答案:

Java知识系统回顾整理01基础03变量02基本变量类型的更多相关文章

  1. Java知识系统回顾整理01基础03变量03字面值

    一.字面值定义 创建一个Hero对象会用到new关键字,但是给一个基本类型变量赋值却不是用new. 因为基本类型是Java语言里的一种内置的特殊数据类型,并不是某个类的对象.  给基本类型的变量赋值的 ...

  2. Java知识系统回顾整理01基础03变量07final关键字

    一.final赋值 final 修饰一个变量,有很多种说法,比如不能改变等等 准确的描述是 当一个变量被final修饰的时候,该变量只有一次赋值的机会 二.在声明的时候赋值 i已经被赋值为5,所以这里 ...

  3. Java知识系统回顾整理01基础03变量06变量的作用域

    一.变量根据所处的位置对应不同的名称 变量处于不同的位置,有不同的名称 名称分别是  字段,属性 参数 局部变量 不同名称的变量,其作用域是不一样的 二.字段,属性,Field 当一个变量被声明在类下 ...

  4. Java知识系统回顾整理01基础03变量05变量命名规则

    一.命名规则 变量命名只能使用字母 .数字. $. _ 变量第一个字符 只能使用: 字母. $. _ 变量第一个字符 不能使用数字 注:_ 是下划线,不是-减号或者-- 破折号 int a= 5; i ...

  5. Java知识系统回顾整理01基础03变量04类型转换

    一.不同类型之间的数据可以互相转换,但是要满足一定的规则 二.数据类型转换规则 转换规则如图所示  精度高的数据类型就像容量大的杯子,可以放更大的数据 精度低的数据类型就像容量小的杯子,只能放更小的数 ...

  6. Java知识系统回顾整理01基础03变量01变量定义

    定义: 变量:用来命名一个数据的标识符 一.什么是变量? 用具体实例定义变量 变量的定义是: 用来命名一个数据的标识符 1949 这是一个数字,代表某年 如果要命名这个数字,在java里就会写成: i ...

  7. Java知识系统回顾整理01基础03变量09块

    一.定义 块:从{ 开始 到对应的} 结束,即一个块 public class HelloWorld { //类对应的块 public static void main(String[] args) ...

  8. Java知识系统回顾整理01基础03变量08表达式

    一.以 ; 结尾的一段代码,即为一个表达式 表达式是由变量.操作符以及方法调用所构成的结构.如下所示: int i = 5; System.out.println(5); 都是表达式 public c ...

  9. Java知识系统回顾整理01基础04操作符02关系操作符

    一.关系操作符 关系操作符:比较两个变量之间的关系  > 大于 >= 大于或等于 < 小于 <= 小于或等于 == 是否相等 != 是否不等 public class Hell ...

随机推荐

  1. zstd和zip操作6g的文本

    ssd是在固态硬盘上的时间 1.txt   7038308223 bytes 都是默认级别 ======================================== zstd-v1.4.4-w ...

  2. RabbitMQ配置文件(advanced.config)

    这是advanced.config配置文件示例: [ %% ------------------------------------------------ --------------------- ...

  3. TinkPHP框架开发的CRMEB小程序商城v4.0二次开发集成支付宝支付

    前言 大家都知道支付宝支付和微信支付宝都只能局限在自己的平台,微信内支付宝支付是根本就不能使用,即使是公众号支付也需要跳转到外部浏览器才可以唤起支付宝支付,并且QQ浏览器唤起支付宝支付还是问题很多,所 ...

  4. Salesforce LWC学习(二十三) Lightning Message Service 浅谈

    本篇参考: https://trailhead.salesforce.com/content/learn/superbadges/superbadge_lwc_specialist https://d ...

  5. UVA 11292-Dragon of Loowater (贪心)

    Once upon a time, in the Kingdom of Loowater, a minor nuisance turned into a major problem. The shor ...

  6. 剑指 Offer 55 - I. 二叉树的深度

    题目描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 例如: 给定二叉树 [3,9,20,null,null,15 ...

  7. leetcode刷题-74搜索二维矩阵

    题目 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值.该矩阵具有如下特性: 每行中的整数从左到右按升序排列.每行的第一个整数大于前一行的最后一个整数.示例 1: 输入:matrix ...

  8. Java审计之SQL注入篇

    Java审计之SQL注入篇 0x00 前言 本篇文章作为Java Web 审计的一个入门文,也是我的第一篇审计文,后面打算更新一个小系列,来记录一下我的审计学习的成长. 0x01 JDBC 注入分析 ...

  9. Java实现随机生成由字母、数字组合的N位随机数

    通过Math.random函数生成所需的字符所有序列,通过判断当前字符是否属于大小写.数字,符合者加入数组内,直到数组存储N位为止,最后把当前数组转为字符串返回调用处. /** * 随机生成由数字.字 ...

  10. 安装paddle的问题,报错Can not find library: libcudnn.so. The process maybe hang.

    今天在服务器上安装paddle的GPU版时报错 报错截图如下: 其实报错已经提示的很明显了,就是要添加一个环境变量.但我想到我之前并没有在全局环境下安装cudnn,以为是这个原因.因为之前安装pyto ...