ASCII 码
ASCII(ASCII American Standard Code for Information Interchange,美国 信息互换标准代码) 上个世纪60年代,美国制定了一套字符编码,对英语字符与 二进制位之间的关系, 做了统一规定。这被称为ASCII码.
Unicode 码
Unicode:一种编码,将世界上所有的符号都纳入其中。这个编号范围 从 0x000000 到 0x10FFFF (十六进制),有 110 多万,每个字符都有 一个唯一的 Unicode 编号,这个编号一般写成 16 进制,在前面加上 U+.
随着互联网的兴起,计算机与网络,计算机与计算机之间的通讯急需一 种统一 的 编码方式 来编译和解释 Unicode 编码. 这种 编码方式 就是 我们现在使用最广泛的 UTF-8,所以,UTF-8 是 Unicode 编码的一种具 体实现,它规定了字符转换到二进制编码的一系列规则.
UTF-8 最大的一个特点,就是它是一种变长的编码方式。它可以使用 1~4个字 节表示一个符号,根据不同的符号而变化字节长度.
基本数据类型转换
java中可以从任意基本类型转型到另外的基本类型,例外 : boolean 类型不可以转换为其他的数据类型.
基本数据类型转换分为默认转换和强制转换
默认转换 :整形,字符型,浮点型的数据在混合运算中相互转换,转换时遵循以下原则:容量小的类型默认转换为容量大的数据类型;数据类型按容量大小排 序为: byte,shor t,char->int->long->float->double byte,short,char之 间不会互相转换,他们三者在计算时首先会转换为int类型.
强制转换 : 容量大的数据类型转换为容量小的数据类型时,要加上强制转换符,但可能造成精度降低或溢出;使用时要格外注意.
运算符
算术运算符: +,-, * ,/,%,++,--
+可以连接数值与数值,包含数值与char,可以连接字符串与字符串,也可以连接数值与字符串
-, * ,/,%,++,-- 只能进行算术运算
关系(比较)运算符: >,= ,<= , == ,!=
基本类型 == 基本类型比较 比较的就是值.== != 除了基本类型比较以外,还可以用作引用类型比较.
逻辑运算符: !,& , | , &&,||
逻辑运算要求 运算符左右两边都是布尔值
&当前面的表达式返回false ,还会继续执行后面的表达式
&&当前面的表达式返回false,发生短路,不会继续执行后面的表达式
| 当前面返回true, 还会继续执行后面的表达式
|| 当前面返回true, 发生短路 ,不会执行后面的表达式
异或 不同为真 ,相同为假 true^ true =flase
赋值运算符: = ,+ = ,- = , * = ,/ =
= 把右边的值赋给左边 注意数据类型是否满足左边所声明的数据类型.
short s = 2;
s = s+3; //s = short+int-->int
s += 3;//short s = (short)(s+3 int) += 中进行了一个隐式的强制数据类型转换
条件运算符
●语法: ●(条件表达式)? 表达式1:表达式2;
条件表达式结果为true,运算后的结果是表达式1; 为false,运算后的 结果是表达式2
位运算
日常开发中位运算使用相对较少,但是巧妙的使用位运算可以大量减少运行开 销,优化算法.
控制台输入
使用标准输入串System.in 使用Scanner取得一个字符串或一组数字 在新增一 个Scanner对象时需要一个System.in对象,因为实际上还是 System.in在取得 用户输入。
Scanner的next()方法用以 取得用户输入的字符串;nextInt()将取得的输入字 符串转换为整数类型.
在使用Scanner对象时,需要在文件头带入 java.util.Scanner; 写法为: import java.util.Scanner.
控制语句
条件语句 :根据不同条件,执行不同语句。
if
if .. else
if .. else if
if .. else if .. else if .. else
switch
循环语句 :重复执行某些动作
for
while
do .. while
if条件结构是根据条件判断之后再做处理
witch语句:多分支选择语句,根据表达式的值,来执行多个操作中的一个。
switch (表达式){
case value1: 语句序列1;
[break];
…………
case valueN: 语句序列N;
[break];
[default : 缺省语句;] }
表达式可以是byte、short、int、char、枚举类型JDK 7以后,可以使用String类型;
case语句后面只能使用常量表达式; case后的值不能重复;某个case分支如果没有提供break语句,则继续执行下一个case后的语句;当表达式的值与任一case子句中的值都不匹配时,将执行default后面的语句;如果 没有default子句,则程序直接跳出switch语句。
while语句是先判断再执行,do while语句是先执行再判断.
for 语句为如下形式: for(表达式1; 表达式2; 表达式3){ 语句; … ; }
执行过程 首先计算表达式1,接着执行表达式2,若表达式2的值 = true,则执行循环语句, 接着计算表达式3,再判断表达式2的值;依此重复下去,直到表达式2的值=false.
break 语句用于终止某个语句块的执行。用在 循环语句体中,可以强行退出循环;
continue 语句用在循环语句体中,用于终止某 次循环过程,跳过循环体中 continue 语句下 面未执行的循环,开始下一次循环过程;
循环嵌套
将一个循环放在另一个循环体内,就形成了嵌套循环。
其中, for ,while ,do…while均可以作为外层循环和内层循环。
实质上,嵌套循环就是把内层循环当成外层循环的循环体。当只有内层 循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当 次循环,开始下一次的循环。
结束外层循环
如果需要从多层循环跳出,则需要使用标签,定义一个标签,如label,然后在需要跳出的地方,用break label就行了
return语句
return语句用于从当前执行的方法中退出, 返回到调用该方法的语句处继续 执行。
有两种格式: return+表达式; 表示将表达式的值返回
return; 表示不返回任何值,当方法说明中用void声明无返回值时, 可以使用 这种格式,此类return语句有时可省略.