Java入门之数据类型和变量

1.字面常量

        字面常量就是在程序运行中,固定不变的量,例如如下的代码

public class Demo{public static void main(String[] args){System.Out.println("hello world!");System.Out.println(100);System.Out.println(3.14);System.Out.println('A');System.Out.println(true);System.Out.println(false);}
}

        sout输出的内容使用了双引号括起来,都是字面常量。

2.数据类型

        Java中数据类型主要分为两类:基本数据类型和引用数据类型。

        基本数据类型有四类八种:

        1.四类:整型,浮点型,字符型,布尔型

        2.八种:

注意:Java中任何类型的系统,数据类型内存占用是固定的,且int,double都是带符号的,整型默认为int,浮点型默认double

3.变量

3.1整型变量

3.1.1整型变量

int a = 10;

我们一般在定义时就给出初始值,且一定要赋值,否则会出现编译报错。同时,在定义int型变量的时候,不要超过int的范围,int的包装类型为Integer

3.1.2长整型变量

long b = 10L;

长整型变量的初始值后加L或者l,一般我们加L,占8个字节,包装类型是Long

3.1.3短整型变量

short a = 10;

占2个字节,包装类型为Short

3.1.4字节型变量

byte b = 10;

占1个字节,范围-127 ~ 128,包装类型Byte

3.4浮点型变量

3.4.1双精度浮点型

double d = 3.14;

在Java中,int除以int的值仍然是int

int a = 10;
int b = 20;
System.out.println(a / b);

结果是0

double num = 1.1;
System.out.println(num * num);  // 输出1.21吗?// 执行结果
1.2100000000000002

double占8个字节,小数的存储并不精确,double的包装类型是Double

3.4.2单精度浮点型

float num = 1.0f;    // 写作 1.0F 也可以

一定要记住在赋值时加f或者F

3.5字符型变量

char c1 = 'A';    // 大写字母
char c2 = '1';    // 数字字符

Java中的字符型变量可以存储汉字,他的包装类型是Character

char c3 = '帅';

3.6布尔型变量

布尔型变量赋值只有true和flase,没有0或1,boolean 类型和 int 不能相互转换, 不存在 1 表示 true, 0 表示 false 这样的用法,包装类型是Boolean,没有确定的大小

boolean b = true;
System.out.println(b);b = false;
System.out.println(b);

3.7类型转换

可以由小到大,由大到小需要强制类型转换,且可以出现问题

int a = 10;
long b = 100L;
b = a;   // 可以通过编译
a = b;   // 编译失败

类型提升:int会被提升为long,但需要注意的是,byte与byte的加法计算中,我们会先将byte提升到int,因此最后输出的内容是int类型,例如:

byte a = 10;
byte b = 20;
byte c = a + b;
System.out.println(c);// 编译报错
Test.java:5: 错误: 不兼容的类型: 从int转换到byte可能会有损失byte c = a + b;

总结:对于不同类型数据的混合运算,范围小的变为大的,对于比四个字节少的类型,会先提升,再计算

4.字符串类型

Java使用String类定义字符串类型,举例如下:

String s1 = "hello";String s2 = " world";System.out.println(s1);System.out.println(s2);

在输出的时候,字符串相加就是拼接

s1 + s2的结果是helloworld

有些情况下,字符串和整型间进行转换

int转换为String

2. String 转成 intint num = 10;
// 方法1
String str1 = num + "";  
// 方法2
String str2 = String.valueOf(num);

String转换为int

String str = "100";
int num = Integer.parseInt(str);

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/700985.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汇昌联信电商:拼多多网店好做吗?

在电子商务的海洋中,拼多多以其独特的团购模式和亲民策略迅速崛起,吸引了大批消费者和商家的目光。对于“拼多多网店好做吗?”这个问题,答案并非简单的是与否,而是需要从多个维度进行深入分析。 一、市场定位与竞争环境 拼多多定…

免费pr相册模板mogrt|手机壁纸AI绘画摄影作品照片展示模板视频素材

pr相册模板mogrt,手机壁纸、电脑桌面壁纸、AI绘画、摄影作品、照片展示模板视频素材。 Premiere Pro 2023及以上版本。 全高清(19201080)分辨率/30fps。 通用表达式(适用于所有特效语言)。 免费下载:https…

Pycharm配置Git以及Gitee实现代码管理(全网最详细)

前言:如果是自己想练手,完全可以用gitee当做代码管理平台(gitee注册后就可用) 1.环境准备 (1)需要安装Git(在windows) (2)windows下安装Git可参考如下链接…

如何为zencart网站开启debug调试模式

在管理Zencart网站时,调试程序是至关重要的一环。然而,有时候在调试过程中,我们可能会遇到前台界面显示不完整或者出现空白页面的情况。这时候,启用错误提示就成了解决问题的关键。 我是在hostease购买的VPS主机带cPanel面板。 他…

【YashanDB知识库】ycm托管数据库时报错OM host ip:127.0.0.1 is not support join to YCM

问题现象 问题的风险及影响 导致数据库无法托管监控 问题影响的版本 问题发生原因 安装数据库时修改了OM的监听ip为127.0.0.1 解决方法及规避方式 后台修改OM的ip为本机的ip或者0.0.0.0 问题分析和处理过程 1、修改env文件中的om IP地址,修改为0.0.0.0或本机…

CSS的基础语法和常见的语法简单归纳

CSS CSS 是层叠样式表(Cascading Style Sheets)的缩写。它是一种用来控制网页样式和布局的标记语言。通过 CSS,可以定义网页中的元素(如文字、图像、链接等)的外观和排版方式,包括字体、颜色、大小、间距、…

C++ Primer 第五版 第十一章 关联容器

关联容器中的元素是按关键字来保存和访问的。 两个主要的关联容器类型是map和set。 一、使用关联容器 使用map 当从map中提取一个元素时,会得到一个pair类型的对象。pair是一个模板类型,保存两个名为first和second的(公有)数据成…

ASP.NET邮件收发程序的设计与开发

摘 要 《邮件收发程序的设计与开发》是一个综合性的程序设计,涉及到界面、系统、数据库、协议、编码等多个方面的内容。本设计前台采用.NET技术,后台数据库采用SQL Server 2000,语言采用C#,主要讲述了邮件系统的注册、登陆、管理、发送和…

EEL中 python端的函数名是如何传递给js端的

python端的函数名是如何传递给js端的 核心步骤:将函数名列表注入到动态生成的 eel.js 中,这样前端一开始引用的eel.js本身已经包含有py_function的函数名列表了。你打开开发者工具看看浏览器中的 eel.js文件源代码就知道了。 具体实现: # 读…

1. AB路线-BFS+分层图

0AB路线 - 蓝桥云课 (lanqiao.cn) #include <bits/stdc.h> #define int long long #define endl \n using namespace std; int n,m,k; //存迷宫格子 char board[1005][1005]; //vis[i][j][k]存坐标(i,j)的格子&#xff0c;在一个周期中第k次经过它 bool vis[1005][1005][…

vue2+Ts中openLayer绘图工具组件封装

vue2Ts中openLayer绘图工具组件封装 效果&#xff1a; 封装组件代码&#xff1a; <!-- openLayer绘图工具 --> <template><a-button-group v-show"isShow"><a-button v-if"shouldShowButton(point)" click"draw(Point)"…

Optional用法

说明&#xff1a;Optional和Stream一样&#xff0c;是Java8引入的特性&#xff0c;本文介绍Optional的几个实际用法。Steam流使用&#xff0c;参考下面这篇文章&#xff1a; Stream流使用 使用 1.保证值存在 // 1.保证值存在&#xff0c;pageNumber&#xff0c;pageSizeInte…