Java基础学习
firstday
JDK(Java Development Kits)-- Java开发工具集
JRE(Java RunTime Environment)Java运行时环境
设置环境变量:
1添加JAVA_HOME环境变量,指向JDK安装目录
2修改path:用于指定操作系统的可执行指令的路径
一
JRE(Java RunTime Environment)Java运行时环境
设置环境变量:
1添加JAVA_HOME环境变量,指向JDK安装目录
2修改path:用于指定操作系统的可执行指令的路径
一
1.Dos命令
cd /d 改变目录;Ctrl+z撤销;Ctrl+c复制Ctrl+v粘贴;Ctrl+a全选;Ctrl+s保存;
2.编译java源代码
javac -d . java源文件名称3.运行.class文件(字节码文件)
java 包.class类名单词在java中的意思:String字符串 println(换行)
二 .数据类型
整数类型 | 占用存储空间 | 存储范围 |
byte | 1字节 | -128 ~ 127 |
short | 2字节 | -215 ~ 215-1 |
int | 4字节 | -231 ~ 231-1 |
long | 8字节 | -263 ~ 263-1 |
浮点类型 | 占用存储空间 | 存储范围 |
float | 4字节 | -3.403E38~3.403E38 |
double | 8字节 | -1.798E308~1.798E308 |
要声明long型可以加‘l’或‘ L’,如:long l = 3L;
Java浮点型常量默认为double型,如要声明一个变量为float型,则需在数字后面加f或F,如:
double d = 3.14;
float f = 3.14f;
转义字符 | 名称 | 描述 |
\n | 换行 | 将光标移到下一行的第一格。 |
\r | 回车 | 将光标移到当前行的第一格(归位)。 |
\t | 水平制表 | 将光标移到下一个水平制表位置。 |
\' | 单引号 | 产生一个单引号。 |
\" | 双引号 | 产生一个双引号。 |
\\ | 斜杠 | 产生一个斜杠。 |
1.自动转型:小范围数据转换成大范围的数据
大范围数据类型 变量名=小范围数据类型的值;
eg: long x=5;
2.强制转型:大范围数据类型转换成小范围数据类型
小范围数据类型 变量名=(小范围数据类型)大范围数据类型的值;
eg: int a=(int)5L;
三.运算符
算术运算符:+ 、 - 、 * 、 / 、 % 、 ++ 、 --
赋值运算符:= 、 += 、 -= 、 *= 、 /= 、 %=
关系运算符:> 、 < 、 >= 、 <= 、 == 、 !=
逻辑运算符:! 、 & 、 | 、 && 、 ||
位运算符:& 、 | 、 ^ 、 ~ 、 >> 、 << 、 >>>
字符串连接运算符:+
三目运算符 :?:
易混淆运算符:
1. 自增运算符:++
易混淆的点:a++ 先保存旧值,再自增,用旧值参加运算
++a 直接自增,用自增后的值参加运算
2. 短路与&& 如果前面的判断结果为false,则后面的判断不再执行。
非短路与& 每一个判断逻辑都要执行
3. 短路或|| 如果前面的判断结果为true,则后面的判断不再执行。
非短路或 | 每一个判断逻辑都要执行
位运算符:
在计算机中数字的运算都是按照“补码”的形式运算的。
正数的原码、反码、补码是相同的;
负数的反码是其原码的除了符号位以外的二进制位取反。
负数的补码是反码加1。
符号位是最左边的那个二进制位,0代表正数,1代表负数。
按位与:& 两个二进制位都为1,结果才为1;其余情况结果为0;
按位或:| 只要有一个二进制位为1,结果就为1;两个二进制位都为0,则结果为0;
按位异或:^ 相同的两个二进制位结果为0,不同的二进制位结果为1。
按位取反:~ 0变1,1变0.
右移: >> 右移后,左边的二进制位用符号位来补,正数补0,负数补1
左移: << 左移后,右边的二进制位用0来补。
无符号右移:>>> 右移后,左边的二进制位用0来补。
三目运算符:
结果返回boolean值的表达式?"结果为true时内容":"结果为false时内容"
secondday
1.if循环
if (条件表达式){
}else if(条件表达式){
}else if(条件表达式){
}…
else{
// 以上表达式结果均为false,执行此处,此分支可选
}
注意:这个结构中只执行第一次表达式结果为true的那个分支,如果所有分支的表达式为false,则执行最后面的else分支,else分支可选。
}else if(条件表达式){
}else if(条件表达式){
}…
else{
// 以上表达式结果均为false,执行此处,此分支可选
}
注意:这个结构中只执行第一次表达式结果为true的那个分支,如果所有分支的表达式为false,则执行最后面的else分支,else分支可选。
case:
package org.westos.ifdemo;
import java.util.Scanner;
public class MultiIf {
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();
}
}
import java.util.Scanner;
public class MultiIf {
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();
}
}