Java基础语法(上篇)
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语言的跨平台所用. 当 ...
随机推荐
- 到处是坑的微信公众号支付开发(java)
之前公司项目开发中支付是用阿里的支付做的,那叫一个简单,随意:悲催的是,现在公司开发了微信公众号,所以我步入了全是坑的微信支付开发中... ------------------------------ ...
- python 从视频中提取图片,并保存在硬盘上
使用python的moviepy库来提取视频中的图片,按照视频每帧一个图片的方式来保存. extract images from video, than save them to disk from ...
- Python Keras module 'keras.backend' has no attribute 'image_data_format'
问题: 当使用Keras运行示例程序mnist_cnn时,出现如下错误: 'keras.backend' has no attribute 'image_data_format' 程序路径https: ...
- [[NSBundle mainBundle] pathForResource:fileName ofType:]获取文件路径不成功
目标文件明明已经加入项目了,但是使用[[NSBundle mainBundle] pathForResource:fileName ofType:]来获取文件路径的时候却为nil: 遇到这个问题大家需 ...
- 转:【Java集合源码剖析】Hashtable源码剖析
转载请注明出处:http://blog.csdn.net/ns_code/article/details/36191279 Hashtable简介 Hashtable同样是基于哈希表实现的,同样每个元 ...
- 201521123097《Java程序设计》第八周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 2. 书面作业 1.本次作业题集集合 public static List return str; } pub ...
- 201521123109《java程序设计》第八周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 2. 书面作业 本次作业题集集合 List中指定元素的删除(题目4-1 ...
- 201521123067 《Java程序设计》第5周学习总结
201521123067 <Java程序设计>第5周学习总结 1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. ●在本 ...
- 201521123081《Java程序设计》 第2周学习总结
201521123081<Java程序设计>第2周学习总结 2017-03-04 14:35:49 1. 本周学习总结 学习了Java一些基本语句,了解了变量类型及其相互转化的方法: 学 ...
- 201521123096《Java程序设计》第一周学习总结
1. 本章学习总结: 对JAVA的发展有一定的了解.JAVA是一种高级语言,需要在JVM上执行.初步学会使用eclipse和NOtepad++. 2. 书面作业 Q1:为什么java程序可以跨平台运行 ...