Java基础语法(上篇)
知识概要:
(1)关键字的表示与规范
(2)标示符
(3)注释
(4)变量
(5)常量和变量
(6)运算符
(7)循环结构
(1)关键字的表示和规范
(2)标识符
在程序中自定义的一些名称。由26个英文字母大小写,数字:0-9 符号:_ $ 组成
定义合法标识符规则:
1,数字不可以开头。 2,不可以使用关键字。
Java中严格区分大小写。
注意:在起名字的时,为了提高阅读性,要尽量有意义。
Java中的名称规范:
包名:多单词组成时所有字母都小写。
• xxxyyyzzz
类名接口名:多单词组成时,所有单词的首字母大写。
• XxxYyyZzz
变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首 字母大写。
• xxxYyyZzz
常量名:所有字母都大写。多单词时每个单词用下划线连接。
• XXX_YYY_ZZZ
(3) 注释
对于单行和多行注释,被注释的文字,不会被JVM(java虚拟机)解释执行。
对于文档注释,是java特有的注释,其中注释内容可 以被JDK提供的工具javadoc 所 解析,生成一套以网格式的
文件体现该程序的说明文档。
注释是一个程序员必须要具有的良好编程习惯。
初学者编写程序可以养成习惯:先写注释再写代码。
将自己的思想通过注释先整理出来,在用代码去体现。
因为代码仅仅是思想的一种体现形式而已。
/**
这是我的Hello World程序。
@author 小强
*/
class Demo
{
/*
这是主函数,是程序的入口
它的出现可以保证程序的独立运行,
*/
public static void main(String[] args)
{
//这是输出语句用于将括号内的数据打印到控制台。
System.out.println("Hello World");
}
}
(4)常量
常量表示不能改变的数值。
Java中常量的分类:
1.整数常量。所有整数
2.小数常量。所有小数
3.布尔型常量。较为特有,只有两个数值。true false。
4.字符常量。将一个数字字母或者符号用单引号( ' ' )标识。
5.字符串常量。将一个或者多个字符用双引号标识。
6.null常量。只有一个数值就是:null.
对于整数:java有三种表现形式。
• 十进制:0-9 ,满10进1.
• 八进制:0-7 ,满8进1. 用0开头表示。
• 十六进制:0-9,A-F,满16进1. 用0x开头表示。
(常量与变量)
(5)常量与变量
变量的概念:
• 内存中的一个存储区域
• 该区域有自己的名称(变量名)和类型(数据类型)
• 该区域的数据可以在同一类型范围内不断变化
为什么要定义变量:
• 用来不断的存放同一类型的常量,并可以重复使用
使用变量注意:
• 变量的作用范围(一对{}之间有效)
• 初始化值
定义变量的格式:
• 数据类型 变量名 = 初始化值;
• 注:格式是固定的,记住格式,以不变应万变。
理解:变量就如同数学中的未知数。
数据类型结构图
进制的基本转换
• 十进制 二进制互转
• 十进制转成二进制 除以2取余数
• 二进制转成十进制 乘以2的幂数
• 十进制八进制互转
• 十进制十六进制互转
• 负数的二进制表现形式 • 对应的正数二进制取反加1
常量与变量
自动类型转换(也叫隐式类型转换)
强制类型转换(也叫显式类型转换)
类型转换的原理
什么时候要用强制类型转换?
表达式的数据类型自动提升
• 所有的byte型、short型和char的值将被提升到int型。
• 如果一个操作数是long型,计算结果就是long型;
• 如果一个操作数是float型,计算结果就是float型;
• 如果一个操作数是double型,计算结果就是double型。
(6)运算符
算术运算符 赋值运算符 比较运算符 逻辑运算符 位运算符 三元运算符
重点介绍:
逻辑运算符
逻辑运算符用于连接布尔型表达式,在Java中不可以
写成3<x<6,应该写成x>3 & x<6 。
“&”和“&&”的区别:
• 单&时,左边无论真假,右边都进行运算;
• 双&时,如果左边为真,右边参与运算,如果左边为假,那么右边不参与运算。
“|”和“||”的区别同理,双或时,左边为真,右边不参与运算。
异或( ^ )与或( | )的不同之处是:当左右都为true时,结果为false
位运算符 位运算符的细节
<<
空位补0,被移除的高位丢弃,空缺位补0。 被移位的二进制最高位是0, >>
最高位是1,空缺位补1。
>>>
被移位二进制最高位无论是0或者是1,空缺位都用0补。
&
二进制位进行&运算,只有1&1时结果是1,否则是0;
|
二进制位进行| 运算,只有0 | 0时结果是0,否则是1;
^
任何相同二进制位进行^ 运算,结果是0;1^1=0 , 0^0=0
不相同二进制位^ 运算结果是1。1^0=1 , 0^1=1
练习:可以作为面试题目
1.最有效率的方式算出2乘以8等于几?2<<3;
2.对两个整数变量的值进行互换(不需要第三方变量)
采用:^异或的手法
练习:对两个变量的数据进行互换。不需要第三方变量。
int a = 3,b = 5;-->b = 3,a = 5;
a = a + b; a = 8;
b = a - b; b = 3;
a = a - b; a = 5;
a = a ^ b;
b = a ^ b;//b = a ^ b ^ b = a
a = a ^ b;//a = a ^ b ^ a = b;
练习:高效的算出 2*8 = 2<<3;
三元运算符
格式
• (条件表达式)?表达式1:表达式2;
• 如果条件为true,运算后的结果是表达式1;
• 如果条件为false,运算后的结果是表达式2;
示例:
• 获取两个数中大数。
• int x=3,y=4,z;
• z = (x>y)?x:y;//z变量存储的就是两个数的大数
程序流程控制
判断结构 选择结构 循环结构
判断结构
if语句
三种格式:略
判断结构
if语句特点:
a,每一种格式都是单条语句。
b,第二种格式与三元运算符的区别:三元运算符运算完要有值出现。好处是:可以写在其他表达式中。
c,条件表达式无论写成什么样子,只看最终的结构是否是true 或者false;
选择结构
switch语句
格式:
switch(表达式)
{
case 取值1:
执行语句;
break;
case 取值2:
执行语句;
break;
…...
default:
执行语句;
break;
}
工作原理:
用小括号中的变量的值依次和case后面的值进行对比,和哪个case后面的值相同了就执行哪个case后面的语句,如果没有相同的则执行default后面的语句;
细节:
1):break是可以省略的,如果省略了就一直执行到遇到break为止;
2):switch 后面小括号中的变量应该是byte,char,short,int四种类型中的一种;
3):default可以写在switch结构中的任意位置;如果将default语句放在了第一行,则不管expression与case
中的value是否匹配,程序会从default开始执行 直到第一个break出现。
循环结构
for While do while
do while特点是条件无论是否满足, 循环体至少被执行一次。
格式:
for(初始化表达式;循环条件表达式;循环后的操作表达式)
{
执行语句;
}
注:
a,for里面的表达式运行的顺序,初始化表达式只读一次,判断循环条件,为真就执行循环体,然后再执行循环后的
操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止。
b,while与for可以互换,区别在于for为了循环而定义的变量在for循环结束就是在内存中释放。而while循环使用的变
量在循环结束后还可以继续使用。
c,最简单无限循环格式:while(true) , for(;;),无限循环存在的原因是并不知道循 环多少次,而是根据某些条件,来
控制循环
Java基础语法(上篇)的更多相关文章
-
JavaSE入门学习6:Java基础语法之运算符和语句(上)
继续接着上篇:JavaSE入门学习5:Java基础语法(一)来看Java的基础语法. 五运算符 运算符是一种"功能"符号,用以通知Java进行相关的运算.比方.我们须要将变量age ...
-
[Java 教程 04] Java基础语法
在上一篇文章中我们已经运行了个简单的java程序,但是没有给大家讲解代码部分的内容与含义.学习,我们要做到知其然而知其所以然,所以本篇文章我们就来讲解java程序的基本语法,学完这篇文章你再回头看上篇 ...
-
046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项
046 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 08 for循环的注意事项 本文知识点:for循环的注意事项 for循环的注意事项 for循环有3个 ...
-
java面向对象编程——第二章 java基础语法
第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...
-
Java基础语法(下篇)
Java基础语法(下篇) 内容概要: (1)函数的定义 (2)函数的特点 (3)函数的应用 (4)函数的重载 ...
-
java——基础语法
java基础语法 1.关键字:java赋予特殊含义的单词. 2.标识符:程序中开发人员自定义的名词,例如:类名,函数名,变量名(注意事项:①不能以阿拉伯数字开头②不能采用关键字). 3.常量:固定的数 ...
-
java基础语法(二)--单列模式
java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...
-
java基础语法(一)
java基础语法(一) 1.类是一种抽象的概念,对象是类的一种具体表示形式,是具体的概念.先有类,然后由类来生成 对象(Object).对象又叫做实例(Instance). 2.类由两大部分构成:属性 ...
-
Java基础语法入门01
Java基础语法入门01 学习java你要先进行去了解JDK,JRE,JVM JDK Java开发工具包 JRE Java语言开发的运行环境 JVM Java虚拟机,用于Java语言的跨平台所用. 当 ...
随机推荐
-
POJ2186
poj2186 popular cows Every cow's dream is to become the most popular cow in the herd. In a herd of ...
-
【OpenStack】OpenStack系列6之Sheepdog环境搭建
准备 repo配置 yum clean all yum makecache yum install -y make automake autoconf gcc nss-devel wget git g ...
-
RAID磁盘阵列学习笔记
RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware ...
-
转--object-C 与lua使用wax交互
[51CTO独家译文]2011年6月的编程语言排行榜Lua语言一军突起,一举进入前十名.这与一年前苹果决定在iOS系统上使用Lua语言密不可分.但是,你了解如何用Lua语言在iOS上开发应用吗?51C ...
-
android使用BlueStacks作为模拟器
android原生的模拟器启动比较慢,偶尔还会出现一些莫名的问题,我们除了可以使用我们的android手机来进行调试外,还可以使用第三方的android模拟器,例如BlueStacks模拟器: 相对原 ...
-
Android开发(30)--AutoCompleteTextView和MultiAutoCompleteTextView自动提示输入内容
首先大家都见过类似这种效果, AutoCompleteTextView是实现动态匹配输入的内容 下面就通过一个实例来说明AutoCompleteTextView,同样,AutoCompleteText ...
-
Java集合中的HashMap类
jdk1.8.0_144 HashMap作为最常用集合之一,继承自AbstractMap.JDK8的HashMap实现与JDK7不同,新增了红黑树作为底层数据结构,结构变得复杂,效率变得更高.为满足自 ...
-
MISCONF Redis is configured to save RDB snapshots, but it is currently not able to persist on disk. Commands that may modify the data set are disabled, because this instance is configured to report e
早上来到公司,线上的项目报错: Error in execution; nested exception is io.lettuce.core.RedisCommandExecutionExcepti ...
-
Visibility from other objects
php.net <?php class Test { private $foo; public function __construct($foo) { $this->foo=$foo; ...
-
怎样知道 CPU 是否支持虚拟化技术(VT) | Linux 中国
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/F8qG7f9YD02Pe/article/details/79832475 wx_fmt=png&a ...