java性别数据类型_Java基础-数据类型及变量
Java基本语法
1.标识符(zhi)
含义:名字
类名、对象名、方法名、变量名、常量名……
一个合法的标识符的组成:数字、字母、_和$
注意事项:
不能重复
不能以数字开头
区分大小写
不能以关键字和保留字作为标识符
关键字:该词汇在Java中已经定义了含义
保留字:该词汇在Java中还没有定义含义,但是以后可能会用,先保留起来 goto
1.1命名规范
类名:
如果是一个单词,那么首字母大写
如果是组合词,那么每个单词首字母大写
变量名:
如果是一个单词,那么全部小写
如果是组合词,那么从第二个单词开始首字母大写
常量名:
如果是一个单词,那么全部大写 USER
如果是一个组合词,那么全部大写,单词之间用_隔开 USER_NAME
2.容器
2.1变量
在程序运行期间,该变量中的数据可以发生改变
2.2常量
在程序运行期间,该容器中的数据不能发生改变(必须和final进行配合使用)
注意:
容器的类型确定了数据的类型
容器的大小确定了数据的大小
2.3声明变量
语法:
数据类型 变量名;
2.4变量内存图
2.5给变量赋值
语法:
变量名=数据;
2.6获取变量值
语法:
通过 变量名 获取
3.数据类型
3.1原始类型(基本数据类型)
3.2整数类型
字节型 byte 1字节=8bit -128到127
在二进制中最小的八位:10000000 -128
在二进制中最大的八位:01111111 127
在二进制中正负区分:
如果最高位是0,表示该数据是正数
如果最高位是1,表示该数据是负数
短整型 short 2字节
整型 int 4字节
长整型 long 8字节
特殊:
如果给long类型的变量赋值,没有在数据后面加上l或L,那么jvm虚拟机会把该变量看成是int类型
在整数类型中默认类型是int类型
注意事项:
必须是数字
必须是整数
3.3浮点类型
单精度 float 4字节
特殊:
如果给float类型的变量赋小数值,没有在数据后面加上f或F,那么jvm虚拟机会把该数据看成是double类型的数据
因为在浮点类型中默认的是double类型
双精度 double 8字节
注意事项:
必须是数字
可以是整数可以是小数
获取的数据必定是小数
3.4字符类型
字符型 char 2字节
特殊:
如果给char类型的变量赋整数值,而且没有放到单引号中,返回的结果是一个字符
因为jvm虚拟机会拿着该数据到ASCII码表中找十进制对应的字符
注意事项:
可以存储任意类型
必须是单个
必须放到单引号中
3.5布尔类型
布尔型 boolean 1字节
注意事项:
该类型的数据不能随意赋值
该类型的数据只有两个:true、false
3.6引用类型
数组、对象、接口
4.ASCII
5.变量简写方式
5.1方式一
语法:
数据类型 变量名=数据;
声明变量时直接初始化值
5.2方式二
语法:
数据类型 变量名1,变量名2,变量名3……
声明变量时可以同时声明多个相同类型的变量
5.3方式三
语法:
数据类型 变量名1=数据,变量名2,变量名3=数据……
声明变量时可以同时声明多个相同类型的变量,并且初始化值
6.类型转换
含义:转换的数据的数据类型
6.1自动类型转换
隐式转换
含义:小容器中的数据自动转给大容器
比较数据类型大小:
如果是同一个数据类型,那么根据字节来比较
如果是不同数据类型,那么根据计算机给定的方式来比较
同一个数据类型大小:
整数类型:byte<<
浮点类型:float<<
字符类型:char
不同数据类型大小:
整数类型<<
特殊类型:
Char类型和byte、short是同一级别,区分不出大小
Char类型不能和byte相互转换
Char类型不能和short相互转换
但是:byte和short可以相互转换
基本数据类型从小到大排序:
(Byte<<
语法:
数据类型 变量名1=数据;------------小容器
数据类型 变量名2=变量名1;--------大容器
6.2强制类型转换
显式转换
含义:大容器中的数据强制转给小容器
语法:
数据类型 变量名1=数据;-----------大容器
数据类型 变量名2=(数据类型)变量名1;--------小容器
底层原理:
6.2.1一次转换
如果大容器强制转换到小容器,数据没有超出范围
6.2.2二次转换
如果大容器强制转换到小容器,数据超出了取值范围,需要再一次进行转换(底层:移位运算)
注意:
a) 强制类型转换只会强制后面的一个,而不是所有
b) 一个整数与byte、short相互运算时,在运算之前数据的数据类型会自动提升为int类型
/**
* 需求:
*
实现一个数据四舍五入并且保留两位小数
*
123.4567
*
*
结果:
*
123.46
*/
7.运算符
含义:数据之间相互运算时使用的符号
7.1 算术运算符
符号
描述
+
相加
-
相减
*
相乘
/
相除
+
正数
-
负数
+
拼接
注意:
如果前面没有遇到字符串,那么后面的数据相运算
如果前面遇到了字符串,那么后面的数据全部相拼接
执行顺序从左往右
%
取模
++在前
自增1 先自增,后赋值 别人获取的数据是新值
++在后
自增1 先赋值,后自增 别人获取的数据是旧值
--在前
自减1
--在后
自减1
取模规律1
取模规律1-1
/**
* 需求:
*
int a=2;
*
int b=++a;
*
int c=--b;
*
int d=c++;
*
int e=d--;
*
int f=(a++)+(b--)-(++c)+(--d)
*
求f的值:
*/
7.2 赋值运算符
符号
描述
=
等号右边赋值给等号左边
+=
等号右边运算完(相加)赋值给等号左边
-=
等号右边运算完(相减)赋值给等号左边
*=
等号右边运算完(相乘)赋值给等号左边
/=
等号右边运算完(相除)赋值给等号左边
%=
等号右边运算完(取模)赋值给等号左边
注意:
一个变量与另一个数据相加的结果重新赋值给该变量,称之为叠加
7.3 比较运算符
符号
描述
>
大于
<
小于
>=
大于等于
<=
小于等于
==
双等于
注意:
返回的结果类型只有一种:布尔类型
7.4 逻辑运算符
符号
描述
&
与
两个条件必须都成立,结果才成立
&&
短路与
两个条件必须都成立,结果才成立
|
或
两个条件有一个成立,结果就成立
||
短路或
两个条件有一个成立,结果就成立
^
异或
相同为假,相异为真
!
非
条件结果的反义词
7.5 条件运算符
名称:条件运算符、三木运算符、三目运算符、三元运算符
语法:
条件表达式?数据1:数据2;
条件表达式返回的结果类型:true、false
数据1:当条件表达式为true时,返回数据1给调用者
数据2:当条件表达式为false时,返回数据2给调用者
注意:
返回的数据要么直接使用要么保存
7.5.1入门程序
/**
* 需求:
*
有一个人,判断该人的性别
*
如果性别是女,给她买名牌包包
*
如果性别不是女,啥也不是
*
*
性别:男性 女性 妖性
*
*
分析:
*
1.声明变量保存性别:char
*
2.通过性别变量进行判断是否是女性
*
3.如果条件成立了,那么返回数据
给她买名牌包包
*
4.如果条件不成立,那么返回数据
啥也不是
*
*
第二步:条件表达式
*
第三步:数据1
*
第四步:数据2
*
*
条件运算符语法:
* 条件表达式?数据1:数据2;
*/
char sex='女';
//使用条件运算符
System.out.println(sex=='女'?"给她买名牌包包":"啥也不是");
7.5.2需求
/**
* 需求:
*
1.已知两个变量,利用条件运算符获取两个变量中的最大值
*
2.已知三个变量,利用条件运算符获取三个变量中的最大值
*
3.已知四个变量,利用条件运算符获取四个变量中的最大值
*
附加题:
* 已知四个变量,利用条件运算符获取四个变量中的最大值(嵌套)
*/
//需求一
int a=4,b=5;
System.out.println("两个变量的最大值:"+(a>b?a:b));
//需求二
int a1=4,b1=5,c1=8;
//判断a1和b1的大小
int temp=a1>b1?a1:b1;
//判断temp和c1的大小
int max1=temp>c1?temp:c1;
System.out.println("三个变量的最大值:"+max1);
//需求三
int a2=4,b2=5,c2=8,d2=10;
//1.判断a2和b2的大小 临时变量1保存最大值
int temp1=a2>b2?a2:b2;
//2.判断c2和d2的大小 临时变量2保存最大值
int temp2=c2>d2?c2:d2;
//3.判断临时变量1和临时变量2的最大值
int max2=temp1>temp2?temp1:temp2;
System.out.println("四个变量的最大值:"+max2);
//需求四
int max3=a2>b2?(a2>c2?(a2>d2?a2:d2):(c2>d2?c2:d2)):(b2>c2?(b2>d2?b2:d2):(c2>d2?c2:d2));
System.out.println("四个变量的最大值:"+max3);
8.面试题
8.1 问:说一下=和==区别?
答:
=:赋值运算符
作用:用于给变量赋值
==:比较运算符
作用:比较两个数据是否相等
8.2 问:&和&&的区别?
答:
&:当第一个条件为false时,它还会执行后面的条件
&&:当第一个条件为false时,直接短路
8.3 问:|和||的区别?
答:
|:当第一个条件为true时,它还会执行后面的条件
||:当第一个条件为true时,直接短路
java性别数据类型_Java基础-数据类型及变量相关推荐
- java基本数据类型_Java基础——数据类型
java中一共分为两种数据类型:基本数据类型和引用数据类型. 基本数据类型 java中基本数据类型可以分为4类8种: 整型:byte.short.int.long 符点型:float.double 字 ...
- JS中的原始数据类型(基础数据类型)和 引用数据类型
文章目录 一.js的数据类型划分方式为 原始数据类型(基础数据类型)和 引用数据类型 二.两种类型的区别 1.存储位置不同 2.传值方式不同 3.两种数据类型在实参和形参中的区别 一.js的数据类型划 ...
- 三 java的基本数据类型_JAVA基础(三)--JAVA基本数据类型
前两篇已经将开发环境搭建完成,如果你已经按之前的教程按部就班的完成了部署,那么世界上最优秀的编程语言之一和世界上最优秀的IDE之一已经出现在你的电脑上(此处应有掌声),如果你还没入门,或者正在台阶上踱 ...
- Java入参关键字_Java基础17-成员变量、return关键字和多参方法
1.成员变量 在类中声明的变量为成员变量 //Dog类 class Dog{ String name;//成员变量 } public class Test1{ public static void m ...
- java基本类型与引用数据类型_java基本数据类型与引用数据类型总结
昨天京东笔试的一道选择题,被坑了.最近一直在做笔试题,发现自己学了两年多的java,三大框架什么都会,却连基本的拆箱装箱都忘了.昨天考的引用数据类型,基本数据类型都不知道.看来得好好把基础复习几遍了. ...
- java 类参数_Java的数据类型和参数传递(详解)
Java提供的数据类型主要分为两大类:基本数据类型和引用数据类型. Java中的基本数据类型 名称 大小 取值范围 byte型 (字节) 8bit -128-127 (-2^7到2^7-1) shor ...
- java数据类型_JAVA的数据类型
什么是数据类型:百度百科 数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作(简单来说就java对数据进行了分类,存在不同的类型) 那么为什么需要数据分类呢? 因为在java中不同 ...
- java位宽_Java的数据类型
Java数据类型 Java虚拟机是通过某些数据类型来执行计算的,数据类型及其运算都是由Java虚拟机规范严格定义的. 数据类型分为两种:基本数据类型和引用数据类型.基本类型的变量持有原始值,而引用数据 ...
- java 数组数据类型_java基本数据类型和数组
第一类:逻辑型boolean 第二类:文本型char 第三类:整数型(byte.short.int.long) char类型占2个字节 short从-32768到32767 int从-21474836 ...
最新文章
- 密码嗅探工具dsniff
- python:将json数据写入到excel
- 【git】之使用shell脚本提交代码
- iOS面试知识点梳理
- ant 彻底了解(转)
- Opencl cl_khr_fp16
- python三维数据增强_python图像数据增强——imgaug (三)
- Nginx 项目部署和配置
- 单链表之寻找中间结点
- 细胞制备流程图_B细胞恶性肿瘤的CAR-T免疫治疗或可出现新进展
- C#绘制九宫格形式的图片
- 数据仓库设计--- 如何设计一个星型模型(示列)
- leaflet使用L.KML.js插件上传本地kml文件到leaflet中
- Redis采用的单线程+多路IO复用
- esp8266网络自动对时 串口字符连接 病显示 12864i2c u8g2库
- 新政策后Jira还好用吗?国内类似Jira的工具价格对比!
- 十年阿里资深架构师教你如何做到年薪50万的程序员(文末附送学习资料)
- Windows下Kafka集群搭建
- bat脚本之“一键删除指定的文件夹和文件”
- 深度丨为什么说元宇宙的发展是大势所趋,而不是偶然?
热门文章
- IDEA--简易计算器
- r语言导出文件为xlxs_R语言学习——R读取txt、csv、xls和xlsx格式文件
- android+百叶窗动画效果,js实现横向百叶窗效果网页切换动画效果的方法
- Linux嵌入式开发——文件系统结构
- 广州到深圳如何走?深圳到广州如何走?(转)
- SVS为某集团打造数字化会议室
- 應該是要敗大光圈定焦鏡頭35mmF2D 還是閃光燈呢 SB-600? SB-800??~~
- 微信小程序之购物车功能 1
- After Effects: Animated Write-on Type After Effects:动画Write-on类型 Lynda课程中文字幕
- 稀疏矩阵压缩sparse.csr_matrix函数与sparse.csc_matric详解