Android开发Java基础之Java语言基础(1)
Java中的基本数据类型
整数类型
整数类型用来存储整数数值,既没有小数部分的数值。可以是正数,也可以是负数。整数类型在Java程序中有三种表现形式,分别是十进制,八进制,十六进制。
整型数据根据它所占内存大小的不同,可以分为byte、short、Int、long四种类型。
数据类型 | 内存空间(8位等于1字节) | 取值范围 |
byte | 8位 | -128~127 |
short | 16位 | -32768~32767 |
int | 32位 | -2147483648~2147483647 |
long | 64位 | -9223372036854775808~9223372036854775807 |
变量的定义(以int型为例)
int x;
int x=1;
int x,y;
int x=1,y=-1;
对于long类型来说,如果long的赋值大于int型的最大值或者小于int型的最小值,需要在数字后加L或l,表示该数值是长整数。
long unm=21474836525L;
浮点类型
浮点类型表示有小数部分的数字。Java语言中的浮点类型分为单精度浮点类型(float)和双精度浮点类型(double)。
数据类型 | 内存空间(8位等于1字节) | 取值范围 |
float | 32位 | 1.4E-45~3.4028235E38 |
double | 64位 | 4.9E-324~1.7976931348623157E308 |
变量的定义
默认情况下,小数都被看作double型。若使用float型小数,则需要在小数后面添加F或f。
float f1 = 13.14F;
double d1 = 4562.1564;
字符类型
char类型
字符类型(char)用于存储单个字符,占用16位(两个字节)的内存空间。在定义字符变量时,要以单引号表示,如‘s'表示一个字符,而”s“表示一个字符串。
变量的定义
char x='a';
由于字符a在Unicode表中的排序位置是97,因此上述语句也可以写成:
char a=97;
转义字符
转义字符是一种特殊的字符变量,它以反斜杠”\"开头,后面跟着一个到多个字符。常见的转义字符表如下:
转义字符 | 含义 |
\ddd | 1~3位八进制数据所表示的字符,如\123 |
\uxxxx | 4位十六进制数据所表示的字符,如\u0052 |
\' | 单引号字符 |
\\ | 反斜杠字符 |
\t | 垂直制表符,将光标移到下一个制表符的位置 |
\r | 回车 |
\n | 换行 |
\p | 退格 |
\f | 换页 |
变量的定义
char c1=’\\';
char char1='\u2650';
布尔类型
布尔类型又称为逻辑类型,通过关键字boolean来定义布尔类型变量,只有true和false两个值,分别表示真和假。布尔类型不能和整数类型进行转换。布尔类型通常在流程控制中作为判断条件。
便利的定义
boolean b;
boolean b=true;
boolean b1,b2;
变量和常量
标识符和关键字
标识符
标识符可以简单的理解为一个名字,用来标识类名、变量名、方法名、数组名、文件名的有效字符序列。
Java中关于标识符的语法规则:
- 标识符由字母、下划线、美元符号、数字组成,长度不受限制。
- 标识符的第一个字母不能数字。
- 标识符不能是关键字。
- 标识符不能是true、false、null。
下面是合法的标识符:
name
user_age
$page
下面是非法的标识符:
4word //数字开头
String //关键字
User name //带有空格
注意:Java中的标识符字母是严格区分大小写的。
关键字
关键字是Java中已经被赋予特殊意义的一些单词。
下面是Java中的50个关键字:
abstract | assert | boolean | break | byte |
case | catch | char | class | const |
continue | ddefault | do | double | else |
enum | extends | final | finally | float |
for | goto | if | implements | import |
instansof | int | interface | long | native |
new | package | private | protected | public |
return | short | static | strictfp | super |
switch | synchronized | this | throw | throws |
transient | try | void | volatile | while |
声明变量
变量的值在程序运行中是可以变化的
声明代码如下:
int age;
char char1=‘r';
声明常量
在程序运行过程中一直不会变得量叫做常量。
声明代码如下:
final int A=23;
final boolean BOOL=true;
常量名通常大写。
数据类型转换
隐式类型转换
从低级类型向高级类型的转换,系统将自动执行。类型按精度从低到高排列的顺序为byte<short<int<long<float<double。
例如:使用int型变量为float型变量赋值,int型将变为float型。
int x=50;
float y=x;
输出y的结果是50.0。
显示类型转换
当把高精度的值赋给低精度的变量时,必须使用显示类型转换(又称强制类型转换)。
例如:
int a = (int)45.23; //a的值为45
int b = (int’)'d'; //b的值为100
Android开发Java基础之Java语言基础(1)的更多相关文章
- Java学习笔记:语言基础
Java学习笔记:语言基础 2014-1-31 最近开始学习Java,目的倒不在于想深入的掌握Java开发,而是想了解Java的基本语法,可以阅读Java源代码,从而拓展一些知识面.同时为学习An ...
- Android开发学习必备的java知识
Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...
- 20165337学习基础和C语言基础调查
20165337学习基础和C语言基础调查 你有什么技能比大多人(超过90%以上)更好? 讲道理我感觉我自己没有什么能比90%以上的人都做得好的技能,我就瘸子里面拔将军挑一个我自认为还不错的技能吧. 我 ...
- 20165227 学习基础和C语言基础调查
学习基础和C语言基础调查 技能学习经验和感悟 你有什么技能比大多人(超过90%以上)更好? 如果非要说出来一个的话,那就是篮球了.从热爱篮球,到热爱打篮球,经历挫折阻碍,不断反思学习,一步一步地向前迈 ...
- 20165318 预备作业二 学习基础和C语言基础调查
20165318 学习基础和C语言基础调查 技能学习经验 我们这一代人,或多或少的都上过各种兴趣班,舞蹈钢琴画画书法,我也是如此.可这些技能中,唯一能拿的出手的就是舞蹈了.按照<优秀的教学方法- ...
- 20165230 学习基础和C语言基础调查
20165230 学习基础和C语言基础调查 技能学习经验 我擅长弹钢琴.小时候我曾上过很多兴趣班,比如钢琴.跳舞.书法.绘画等等,唯一坚持至今的只有钢琴.仔细一算学习钢琴至今已有12年,不能说已经精通 ...
- 20165237 学习基础和C语言基础调查
学习基础和C语言基础调查 一.技能学习与特长 你有什么技能比大多人(超过90%以上)更好? 我的爱好和技能说实话挺广泛的.如果要挑出来一个很擅长的话,我觉得应该是钢琴. 针对这个技能的获取你有什么成功 ...
- 20165234 预备作业2 学习基础和C语言基础调查
学习基础和C语言基础调查 一.技能学习经验及体会 你有什么技能比大多人(超过90%以上)更好? 看到这个问题,我仔细想了想,好像的确没有什么特别出众的技能,但是我想到了许多我个人的爱好. 我从小喜欢五 ...
- 学习基础和C语言基础调查
学习基础和C语言基础调查 一.一种比大多数人(超过90%以上)更好的技能 说句实话,我还没有那种特别特别自信的.说我能拿得出手的.所谓能超过百分之九十以上的人的技能.毕竟人外有人,天外有天. 姑且算上 ...
- 20165323 学习基础和C语言基础调查
20165323 学习基础和C语言基础调查 一.技能学习心得 1.你有什么技能比大多人更好? 我觉得我羽毛球打的还行,不能说打得比大多数人好,但是对于一些打羽毛球的要领还是掌握的. 2.针对这个技能的 ...
随机推荐
- python之celery的使用(一)
前段时间需要使用rabbitmq做写缓存,一直使用pika+rabbitmq的组合,pika这个模块虽然可以很直观地操作rabbitmq,但是官方给的例子太简单,对其底层原理了解又不是很深,遇到很多坑 ...
- istio入门(04)istio的helloworld-部署构建
参考链接: https://zhuanlan.zhihu.com/p/27512075 安装Istio目前仅支持Kubernetes,在部署Istio之前需要先部署好Kubernetes集群并配置好k ...
- React中路由传参及接收参数的方式
注意: 路由表改变后要重启服务 方式 一: 通过params 1.路由表中 <Route path=' /s ...
- Linux网络配置(setup)
新装的Linux系统,想要快捷的网络配置,首选setup命令. 1.设置setup为中文. echo LANG="zh_CN.UTF-8" > /etc/sysconfig/ ...
- Krajee插件的用法
第一步: <!-- 必须引入 --> link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/boots ...
- Linux:sheel脚本for的用法,及日期参数+1day用法
记录下shell的for的用法,及参数是日期的情况下,该日期+1day的用法: #!/usr/bin/env bash source /app/catt/login.sh p_days="2 ...
- 原生js中实现全选和反选功能
<!DOCTYPE html> <html> <head lang="en"> <meta char ...
- js常用正则表达式表单验证代码
方法一: var re=/正则表达式/; re.test($("txtid").val()) 方法二: $("txtid").val.match(/正则 ...
- javascript实现图片延迟加载方法汇总(三种方法)
看到一些大型网站,页面如果有很多图片的时候,当你滚动到相应的行时,当前行的图片才即时加载的,这样子的话页面在打开只加可视区域的图片,而其它隐藏的图片则不加载,一定程序上加快了页面加载的速度,跟着小编一 ...
- Web SCADA 电力接线图工控组态编辑器
前言 SVG并非仅仅是一种图像格式, 由于它是一种基于XML的语言,也就意味着它继承了XML的跨平台性和可扩展性,从而在图形可重用性上迈出了一大步.如SVG可以内嵌于其他的XML文档中,而SVG文档中 ...