java总结1
来源:互联网 发布:多线程经典案例 java 编辑:程序博客网 时间:2024/06/07 19:29
The 1st day——2017.11.25.
一.JAVA简介:
1.JAVA之父-詹姆斯.高斯林(“高司令”);
2.JAVA优势:(1)跨平台(“一次编译,到处运行”);(2)健壮,安全;(3)分布式;(4)多线程;(5)面向对象;(6)高性能。
3.环境变量的设置:(1)添加JAVA_HOME环境变量,指向JDK安装目录;(2)修 改path: 用于指定操作系统的可执行指令的路径。
二.DOS命令:
1.切换目录:cd /d 目标目录
2.编译java源代码:javac -d . java源文件名称
3.运行.class文件(字节码文件):java 包.class类名
三.变量:每次变量使用前必须要先申明,然后赋值,方可使用。eg:int i=20;
四.数据类型的转换:
1.自动转型:小范围转换成大范围数据
大范围数据类型 变量名=小范围数据类型的值 eg:long=5;
2.强制转型:大范围数据类型转换成小范围数据
小范围数据类型 变量名=(小范围数据类型)大范围数据类型的值; eg: int a=(int)5L;
3.java语言整型常量默认为int;java浮点型常量默认为double型;char字符本质是数字;boolean类型不能转换成任何其它数据类型。
4.转义字符:
五.运算符
1.易混淆运算符:
(1)自增运算符:++
a++:先保存旧值,再自增,用旧值参加运算;++a:直接自增,用自增后的值参与运算。
(2)短路与&&: 如果前面的判断结果为false,则后面的判断不再执行;
非短路与&:每一格判断逻辑都要执行
(3)短路或|| :如果前面的判断结果为true,则后面的判断不再执行;
非短路或|:每一个判断逻辑都要执行。
2.位运算符:
***在计算机中数字的运算都是按照“补码”的形式运算的。
(1) 正数的原码、反码、补码、是相同的。
(2)负数的反码是其原码除了符号位以外的二进制位取反,其补码是反码加1。
(3)符号位是最左边的那个二进制位,0代表正数,1代表负数。
(4)按位与:& 两个二进制位都为1,结果才为1,其余结果为0;
(5)按位或:| 只要有一个二进制位为1,结果就为1,而两个二进制位都为0,则结果为0;
(6)按位异或:^ 相同的两个二进制结果为0,不同的二进制结果为1;
(7)按位取反:~0变1,1变0。
(8)右移:>>右移后,左边的二进制位用符号位来补,正数补0,负数补1;
(9)左移:<<左移后,右边的二进制位用0来补;
(10)无符号右移:>>>右移后,左边的二进制位用0来补。
3.三目运算符:结果返回boolean值的表达式?"结果为true时内容":"结果为false时内容"。
The 2nd day——2017.11.26.
五大结构语句的使用:
一.IF结构:
1.if语句
if(条件表达式){
表达式结果为true,执行此处代码
}
2.if-else语句
if(条件表达式){
表达式结果为true,执行此处代码
}else{
表达式结果为false,执行此处代码
}
3.if-else if-else if-..-else语句
if(条件表达式){
}else if(条件表达式){
}else if(条件表达式){
}...
else{
//以上表达式结果均为false,执行此处,此分支可选。
}
***这个结构中只执行第一次表达式结果为true的那个分支,如果所有分支的表达式为false,则执行最后面的else分支,else分支可选。
eg:/*多重IF*/
package org.westos.ifdemo;
import java.util.Scanner;
public class MuIF {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in); // 用此“扫描器”接收键盘输入
System.out.print("请输入考试成绩:");
int score=scan.nextInt(); // 接收键盘输入的整数类型,输入完成之前一直阻塞
if(score>=90){
System.out.println("优秀!");
}else if(score>=80){
System.out.println("良好");
}else if(score>=70){
System.out.println("一般");
}else if(score>=60){
System.out.println("及格");
}else{
System.out.println("不及格,准备补考!");
}
scan.close();
}
}
二.SWITCH结构:
switch(表达式){
case 常量1;
代码1;
break;
case 常量2;
代码2;
break;
...
default;
代码 ;
break;
}
***规则:(1)返回值必须是:int, byte, char,short,String,enum;(2)case子句中的取值必须是常量,且所有case子句中的取值应是不同的;(3)default子句是可选的,break语句用来在执行完一个case分支后使程序跳出switch语句块。
eg:/*switch表达式的返回值必须是byte, short,int, char,String,enum之一*/
package org.westos.switchdemo;
import java.util.Scanner;
public class SwitchDemo {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("请输入季节:");
String season=scan.next();
switch(season){
case "春天":
System.out.println("春暖花开");
break;
case "夏天":
System.out.println("夏日炎炎");
break;
case "秋天":
System.out.println("硕果累累");
break;
case "冬天":
System.out.println("白雪皑皑");
break;
default:
System.out.println("输入季节有误!");
}
scan.close(); // 关闭
}
三.FOR循环
格式:for(int i=0;i<100;i++){
System.out.println("好好学习!");
}
***在循环结构中,break跳出整个循环,continue跳出当前循环。
eg:/*实现1-100能被3整除不能被5整除的数的和*/
package org.forloop;
public class DivideFor {
public static void main(String[] args) {
int sum=0;
for(int i=1;i<=100;i++){
if(i%3==0 && i%5!=0){
sum+=i; // 相当于sum=sum+i
}
}
System.out.println("结果是:"+sum);
}
}
四.WHILE循环
格式:
while( 条件表达式语句){
循环体语句
}
***先判断条件,再决定是否循环。
eg:/*while exam*/
package org.whiledemo;
import java.util.Scanner;
public class WhileExam {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int count=0; // 用来记录考试次数
System.out.print("请输入当前成绩:");
int score=scan.nextInt();
while(score<60){
count++;
System.out.println("当前不及格,第"+count+"次补考");
System.out.println("***补考中***");
System.out.print("输入补考后的成绩:");
score=scan.nextInt();
}
System.out.println("恭喜,考试通过!");
scan.close();
}
}
五.DO HILE循环
格式:do{
循环体语句;
}while(条件表达式);
***至少执行一次循环体,再判断条件,如果条件判断的结果为true,则再次循环,否则,停止循环。
eg:/*do while*/
package org.whiledemo;
import java.util.Scanner;
public class DoWhile {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int score=0;
do {
System.out.print("请输入考试成绩:");
score=scan.nextInt();
} while (score<60);
System.out.println("恭喜,考试通过!");
scan.close();
}
- JAVA总结1
- java基础知识总结(1)
- Java 自学总结1
- Java 关键字总结 (1)
- java面试总结1
- java高级总结1
- java基础总结1
- java总结(1)
- JAVA输入输出总结1
- java模式总结1
- java基础总结---1
- java 反射总结1
- java错误总结1
- Java基础知识总结1
- Java易错点总结1
- java学习总结(1)
- Java使用-总结-1
- Java知识点总结1
- post请求
- CSS总结
- POJ 1228 Grandpa's Estate
- 数据结构:不带权有向图的邻接矩阵和邻接表储存及求出入度实现
- 【Nginx】nginx初步 从安装开始!
- java总结1
- 在Linux系统中,删除lv、vg、pv
- Git信息泄露搜索的一些工具总结
- 全文检索之Lucene和Solr
- Python3与OpenCV3.3 图像处理(八)--模糊
- 内核模块的Makefile文件
- windows环境下安装npm、cnpm、bower
- javaBean验证框架(9)—分组验证
- 在easyUI中把form表单转换成json数据利用datagrid的load方法实现条件查询