当前位置: 首页 > news >正文

Java基础之字面值常量

常量

概念

​ 在程序运行过程中,其值不可以发生改变的量,称为常量

常量分类

  • 字面值常量
  • 自定义常量(面向对象部分讲解)

字面值常量

  • 字符串常量

    用双引号括起来的多个字符(可以包含0个、一个或多个)

    例如:“”、“a”、“abc”、"中国"等

  • 整数常量

    整数值,例如:-10、0、88等

  • 小数常量

    小数值,例如:-5.5、1.0、88.88等

  • 字符常量

    用单引号括起来的一个字符

    例如:‘a’、‘5’、‘B’、'中’等

  • 布尔常量

    布尔值,表示真假,只有两个值:true、false

  • 空常量

    一个特殊的值,空值:null

注意事项

  • 除空常量外,其他常量均可使用输出语句直接输出

  • 大家可以好好揣摩下字面值常量这个词,这个字面值是固定、不可改变的,即常量值

案例展示

package com.briup.chap02;public class Test04_Constant {//输出各种类型的常量值public static void main(String[] args) {System.out.println(10); 	// 输出整数常量System.out.println(5.5); 	// 输出小数常量System.out.println('a'); 	// 输出字符常量System.out.println(true); 	// 输出boolean常量值trueSystem.out.println("欢迎来到杰普软件"); // 输出字符串常量}
}

常量补充内容

观察下面案例,思考案例中常量的数据类型

//输出各种常量值
public static void main(String[] args) {System.out.println(10); 	// intSystem.out.println(0b0110);	// ?System.out.println(026);	// ?System.out.println(0x1c);	// ?System.out.println(5.5); 	// doubleSystem.out.println('a'); 	// charSystem.out.println(true); 	// booleanSystem.out.println("欢迎来到杰普软件"); // String
}

注意:整形字面值,不论是二进制、八进制还是十进制、十六进制,默认都是int类型常量。

思考:long、float等类型的常量,该如何书写?

  • 整形数后面加’L’或’l’,就表示long类型字面值常量

  • 小数后面加’F’或’f’,就表示float类型字面值常量

//输出各种常量值
public static void main(String[] args) {System.out.println(10); 	// int//整形数后面加'L'或'l',就表示long类型字面值常量System.out.println(0x1cl);	//longSystem.out.println(10L);	//longSystem.out.println(5.5); 	// double//小数后面加'F'或'f',就表示float类型字面值常量 System.out.println(3.14F);	//floatSystem.out.println(-2.0f); 	//float//下面用double类型常量值给f1赋值,编译报错,为什么?//float f1 = 5.5; float f2 = 5.5F;int num = 20;//下面给num赋值编译报错,为什么?//num = 1000000000000L;System.out.println(num);//下面给count赋值编译运行正常,为什么?long count = 1000000000000L;System.out.println(count);
}

扩展内容:思考下面代码中的为什么编译报错

package com.briup.chap02;public class Test07_Extend {//输出各种常量值public static void main(String[] args) {//1.为什么下面用double类型常量值给f1赋值,会编译报错?//float f1 = 5.5; float f2 = 5.5F;int num = 20;//2.为什么下面给num赋值,会编译报错?//num = 1000000000000L;System.out.println(num);//3.为什么下面给count赋值,编译运行正常?long count = 1000000000000L;System.out.println(count);}
}

相关文章:

  • html+css+js网页设计 大一电商6个页面 带js 有轮播图,增删改查等功能
  • 【Qt】QWidget的windowTitle属性
  • Linux信号控制进程种类、内存查看和NICE优先级
  • 在CentOS 7 上安装和配置 uwsgi 详细教程
  • Secure Coding in C and C ++ (三)关于语法与指针的感悟
  • gitlab实现CI/CD自动化部署
  • Kafka 的 ISR 机制
  • 并查集..
  • 智启万象|挖掘广告变现潜力,保障支付安全便捷
  • 集成高精度16bit模数转换ADC电路的两通道测量高精度电容调理芯片 - MDC02
  • C盘磁盘空间不足:VirtualBox的锅
  • 代码随想录 day 39 动态规划 打家劫舍
  • Adobe PhotoShop - 制图操作
  • 【计算机网络——分组延时,丢失,吞吐量】
  • 2024做一个网站要多少钱?
  • 【刷算法】从上往下打印二叉树
  • 10个确保微服务与容器安全的最佳实践
  • 10个最佳ES6特性 ES7与ES8的特性
  • 2017 年终总结 —— 在路上
  • gops —— Go 程序诊断分析工具
  • Invalidate和postInvalidate的区别
  • iOS 颜色设置看我就够了
  • JAVA_NIO系列——Channel和Buffer详解
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • LintCode 31. partitionArray 数组划分
  • QQ浏览器x5内核的兼容性问题
  • Vue组件定义
  • 番外篇1:在Windows环境下安装JDK
  • 开源地图数据可视化库——mapnik
  • 前端学习笔记之观察者模式
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 微信小程序开发问题汇总
  • 我与Jetbrains的这些年
  • 小程序滚动组件,左边导航栏与右边内容联动效果实现
  • 数据可视化之下发图实践
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​2021半年盘点,不想你错过的重磅新书
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • (160)时序收敛--->(10)时序收敛十
  • (2024,Vision-LSTM,ViL,xLSTM,ViT,ViM,双向扫描)xLSTM 作为通用视觉骨干
  • (27)4.8 习题课
  • (DenseNet)Densely Connected Convolutional Networks--Gao Huang
  • (leetcode学习)236. 二叉树的最近公共祖先
  • (定时器/计数器)中断系统(详解与使用)
  • (二) Windows 下 Sublime Text 3 安装离线插件 Anaconda
  • (附源码)spring boot校园健康监测管理系统 毕业设计 151047
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (六)Hibernate的二级缓存
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (学习日记)2024.04.04:UCOSIII第三十二节:计数信号量实验
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)Sql Server 保留几位小数的两种做法
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库