JAVA基础总结2
2.1 关键字
常用的关键字主要包括如下:
2.2 标识符
简单而言标识符它其实就是用于标识某些东西的符号。
2.3 注释的应用
注释说明
注释的作用:
注释的应用:
2.4 常量和变量
常量的定义与分类
进制的由来
注意:byte 是1个字节 = 8个二进制位, 1K = 1024。
进制的基本转换介绍
负数的进制
变量的介绍
JAVA的数据类型主要包含引用类型和基本数据类型,其中有8种基本数据类型
变量的基本演示
类型提升与强制转换说明
结果分别是97与98,其实就是二进制和生活中文字对应的关系表,即ASCII编码表,反之:System.out.println(char('a' + 1)), 输出结果等于b, 其中b对应的编码表里面的数字是98。
类型运算细节
class DemoTest20171015
{
public static void main(String[] args)
{
// int x = 3;
// byte b = 5;
// x = x + b;
// System.out.println("x=:" + x); // byte b = 3;
// b = (byte)(b + 200);
// System.out.println("b=:" + b); //输出结果为-53, 强制类型转换 // System.out.println('你' + 0); //输出结果为20320,即unicode国际编码表对应的关系 byte b = 4;
// b = 3+7;
// System.out.println("b=:" + b); //输出结果为10
// byte b1 = 3;
// byte b2 = 7;
// b = b1 + b2;
// System.out.println("b=:" + b); //编译报错,说int转换byte可能损失精度,原因是b1和b2是变量,其中它们的值是变化的,无法判断;
//而上面b = 3+7是属于固定的常量,可以判断,所以输出结果等于10. int x;
int x1 = 10;
int x2 = 98;
x = x1 + x2;
System.out.println("x=:" + x); //输出结果为108,因为x1和x2默认都是int类型,所以最终运算结果还是为整型,即int类型。 }
}
2.5 运算符
JAVA中主要包含以下6种运算符:
算术运算符
说明:算术运算符主要包含:+ - * / %(取余,模运算) ++(自增:在原有数据基础之上+1,再赋给原有数据) --
练习:
int x = 6370; x = x / 1000 * 1000 System.out.println(x); // 输出结果为6000 System.out.println(5 % 2); //输出结果为1 System.out.println(2 % 5); //输出结果为2 System.out.println(3 % 5); //输出结果为3 System.out.println(-5 % 2); //输出结果为-1 System.out.println(5%-2); //输出结果为1 System.out.println(5%5); //输出结果为0 注意:任何数字和字符串相连接,其结果为字符串,如:System.out.println("ab" + 5 + 5); //输出结果为ab55 int a = 3; a++; //a= a+1; System.out.println(a); //输出结果为4 int a =3,b; b = a++; System.out.println("a=" + a + ", b=" + b); //输出结果a=4, b=3 int a =3,b; b = ++a; System.out.println("a=" + a + ", b=" + b); //输出结果a=4, b=4 int i = 3; i = i++; System.out.println(i) ; //输出结果为3
赋值运算符
说明:主要包含: = += -= /= *= %=
int a = 4; a+=2;//a = a + 2; short s = 3; s+= 4;//输出结果为7 // s = s+4; //运行编译报错,有可能损失精度,原因是没有做强转,而s+=4可以自动做转换
比较运算符
逻辑运算符
思考:逻辑运算符有什么用呢?
用于连接两个boolean类型的表达式,如:2<x < 5, x > 2 & x < 5;
&符号的运算特点:
true & true = true;
true & false = false;
false & true = false;
false & false = false;
&符号的运算规律:
&运算符两边只有一个是false,结果肯定是false;只有两边都是true,结果才是true
|符号的运算特点:
true | true = true
false | true = true
true | false = true
false | false = false
|符号的运算规律
|运算符 的两边只要有一个是true,结果肯定是true;只有两边都是false,结果才是false
^:异或符号的运算特点:
true ^ true = false
false ^ true = true
true ^ false = true
false ^ false = false
^符号的运算规律:
^符号的两边结果如果相同,结果是false;两边的结果不同,结果是true。
!:非运算符,判断事物的另一面
!true = false;
!false = true;
!!true = true;
&&符号的运算特点:
和&运算的结果是一样的,但是运算过程有点小区别。
&符号无论左边的运算结果是什么,右边都参与运算;&&当左边为false时,右边不参与运算。
||符号的运算特点:
和|运算结果是一样的,但是运算过程有点小区别。
|符号无论左边的运算结果是什么,右边都参与运算;||当左边是true时,右边不参与运算。
位运算符
<< 相当于乘以2的倍数
>> 相当于除以2的倍数
移n位,就是对乘以或者除以2的n次幂。
图解
三元运算符
定义:简单而言就是三个元素参与运算的符号。
演示:
class OperateDemo
{
public static void main(String args[])
{
int x = 0, y;
y = (x > 1)?100:200;
System.out.println(y); // 输出结果为200 //获取两个整数中的较大的整数
int a,b;
int max = (a>b)?a:b; //获取三个整数中的较大的整数
int o,p,q;
int temp = (o>p)?o:p;
int max2 = (temp>q)?temp:q;
} }
练习:
1、 直接操作二进制位,或使用移位运算(2<<3)
2、
class OperateTest
{
public static void main(String[] args)
{
//最有效率的方式算出2乘以8等于几
System.out.println(2<<3); //对两个整型变量的值进行互换(不需要第三方变量)
int a = 3, b = 5;
System.out.println("a="+a+",b="+b); //开发时使用,使用第三方变量的形式,因为阅读性强
// int c;
// c = a;
// a = b;
// b = c;
// System.out.println("a="+a+",b="+b); //这种方式最好不要用,如果两个整数的数值过大,会超出int范围,会强制转换,数值会变化。
// a = a+b;//a = 3+5 = 8;
// b = a-b;//b = 3+5-5 = 3;
// a = a-b;//a = 3+5-3 = 5;
// System.out.println("a="+a+",b="+b); //面试时使用
a = a^b;//a = 3^5;
b = a^b;//b = (3^5)^5; b=3;
a = a^b;//a = (3^5)^3; a=5;
System.out.println("a="+a+",b="+b); }
}
2.6 语句
流程控制语句
2.6.1 判断结构
if语句三种格式:
1. if (条件表达式)
{
执行语句;
}
2. if (条件表达式)
{
执行语句;
}
else
{
执行语句;
}
3.if (条件表达式)
{
执行语句;
}
else if (条件表达式)
{
执行语句;
}
......
else
{
执行语句;
}
if 语句练习-星期
int week = 1;
if (week == 1)
{
System.out.println(week + "对应的中文是星期一");
}
else if (week == 2)
{
System.out.println(week + "对应的中文是星期二");
}
else if (week == 3)
{
System.out.println(week + "对应的中文是星期三");
}
else if (week == 4)
{
System.out.println(week + "对应的中文是星期四");
}
else if (week == 5)
{
System.out.println(week + "对应的中文是星期五");
}
else if (week == 6)
{
System.out.println(week + "对应的中文是星期六");
}
else if (week == 7)
{
System.out.println(week + "对应的中文是星期三日");
}
else
{
System.out.println("没有对应的星期");
}
if 语句练习-季节
int month = 13;
if (month <1 || month >12)
{
System.out.println("月没有对应的季节");
}
else if (month>=3 && month <= 5)
{
System.out.println("月是春季");
}
else if (month>=6 && month <= 8)
{
System.out.println("月是夏季");
}
else if (month>=9 && month <= 11)
{
System.out.println("月是秋季");
}
2.6.2 Switch语句
2.7 函数
定义
特点
应用
重载
2.8 数组
JAVA基础总结2的更多相关文章
- Java基础知识(壹)
写在前面的话 这篇博客,是很早之前自己的学习Java基础知识的,所记录的内容,仅仅是当时学习的一个总结随笔.现在分享出来,希望能帮助大家,如有不足的,希望大家支出. 后续会继续分享基础知识手记.希望能 ...
- [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)
如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html 谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...
- 【JAVA面试题系列一】面试题总汇--JAVA基础部分
JAVA基础 基础部分的顺序: 基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法 线程的语法,集合的语法,io 的语法,虚拟机方面的语法 每天几道,持续更新!! 1.一个". ...
- 最适合作为Java基础面试题之Singleton模式
看似只是最简单的一种设计模式,可细细挖掘,static.synchronized.volatile关键字.内部类.对象克隆.序列化.枚举类型.反射和类加载机制等基础却又不易理解透彻的Java知识纷纷呼 ...
- java基础练习 字符串,控制流,日历,日期等
1,对基本控制流程的一些练习 package org.base.practice3; import org.junit.Test; /** * Created with IntelliJ IDEA. ...
- Java基础知识【下】( 转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608360 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- Java基础知识【上】(转载)
http://blog.csdn.net/silentbalanceyh/article/details/4608272 (最终还是决定重新写一份Java基础相关的内容,原来因为在写这一个章节的时候没 ...
- java基础学习03(java基础程序设计)
java基础程序设计 一.完成的目标 1. 掌握java中的数据类型划分 2. 8种基本数据类型的使用及数据类型转换 3. 位运算.运算符.表达式 4. 判断.循环语句的使用 5. break和con ...
- Java基础加强之多线程篇(线程创建与终止、互斥、通信、本地变量)
线程创建与终止 线程创建 Thread类与Runnable接口的关系 public interface Runnable { public abstract void run(); } public ...
- java基础知识小总结【转】
java基础知识小总结 在一个独立的原始程序里,只能有一个 public 类,却可以有许多 non-public 类.此外,若是在一个 Java 程序中没有一个类是 public,那么该 Java 程 ...
随机推荐
- 轻谈 return i++
在写函数的时候,发现了又一个很有意思的事情 先上代码 public class Test{ static int number = 2; public static void main(String ...
- 201521123049 《JAVA程序设计》 第4周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. ###1.类型转换(cast):是将两种不同类型的变量进行转换,但不能随意强制转换,随意强制 ...
- 201521123075 《Java程序设计》第9周学习总结
1. 本周学习总结 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避 ...
- java课程设计(团队)-五子棋
单机五子棋小游戏 一:团队介绍 组长:网络1511,毛卓 组员:网络1511,朱潞潞 组员:网络1511,范阳斌 二:项目git提交记录截图 三:项目使用主要技术 netBeans,GUI 四:项目特 ...
- Java-大集合拆分为指定大小的小集合
因为Oracle数据的in 最大允许1000 ,超过就会报错, 所以需要将集合拆分为多个集合进行处理. /** * 拆分集合 * @param <T> * @param resList 要 ...
- Linux 命令练习
ls命令 ls就是list的简写,目的是打印当前目录下的清单 格式 ls[选项][目录名] 常用参数 -a –all 列出目录下的所有文件,包括以 . 开头的隐含文件 -l 除了文件名之外,还将文件 ...
- 使用Pano2VR 切割图片
图片转换好之后得到一组立方体面片.
- node 当中的 cnpm和npm 的区别和使用
在安装nodejs之后会有npm命令 打开命令符输入之后 输入node -v(记得-v前空格)查看版本信息 如果显示出来了就说明安装成功 然后 npm 可以安装node插件 cnpm使用的是淘宝网 ...
- PuTsangTo-单撸游戏开发02 测试场景与单轴移动
且不说立项与设计阶段的工作量,一个完整的游戏在开发阶段设计的职责范围也是很广,还有个大问题就是PuTsangTo项目也是本人在边学边做,截止目前还是满满的无从下手的感觉,一方面是技能与经验不足,另一方 ...
- oracle pl/sql 简介
一.pl/sql 是什么pl/sql(procedural language/sql)是oracle在标准的sql语言上的扩展.pl/sql不仅允许嵌入sql语言,还可以定义变量和常量,允许使用条件语 ...