使用eclipse构建java项目
Eclipse创建SimpleProject (一个简单的项目)Java注释
单行注释多行注释文档型注释自动添加默认注释 Java-jUnit测试Java变量Java变量的声明方式Java常量Java数据类型
数值型
整数型浮点型 字符型布尔型数据类型转换 Java字符串
Java字符串声明赋值与读取Java字符串拼接 Java转义字符Java预定义格式Java运算符
数学运算符比较运算符JAVA逻辑运算符
逻辑与 &逻辑或 |短路与 &&短路或 ||逻辑非! JAVA位运算符左移与右移
使用eclipse构建java项目 Eclipse创建SimpleProject (一个简单的项目)
找到File文件new新建一个Maven Project
勾选选**Create a simple project(skip archetype selection)**创建一个简单的项目(跳过一个骨架选择)
点击Next下一步在Group Id处写入(例:com.lihaozhe),Artifact Id处写入(例:day03),点击Finish完成,等待下面进度条跑完即可
新建完成后点击左侧day03下的src/main/java右键new新建class类
在新建的java-class类中找到Package写入(例:com.lihaozhe.day03),name名字写入(例:Demo01),然后勾选(自动生成)public static void main (String[] args);,点击Finish完成
在Demo01中输入
System.out.println("我爱你中国");
然后右键空白处,选择run as下的java application
控制台会输出
我爱你中国Java注释
注释: 就是对一段程序的描述 便于程序员理解和使用该程序
单行注释双斜线为单行注释或单斜线加*号也是单行注释
public class HelloWorld {
public static void main(String[] args){
// 这是单行注释的示例
System.out.println("Hello World");
}
}
多行注释
单斜线加*号回车是多行注释
public class HelloWorld {
public static void main(String[] args){
System.out.println("Hello World");
}
}
文档型注释
文档型注释: 一般用户注释一个类或与一个方法
public class HelloWorld{
public static void main(String[] args){
System.out.println("Hello World");
}
}
自动添加默认注释
点击window选项,选中preferences首选项 打开
找到java的Code Style代码的样子打开点击Code Templates代码的模板
选择code代码打开点击New Java files再点击右上角的Edit编辑
以文档型注释添加所需的默认注释后点击右下角的Apply and Close应用和关闭
文档型注释如:
可以插入一个变量日期、时间等
Java-jUnit测试
找到项目左侧day04下的src/test/java右键new新建Package包name中写入com.lihaozhe.day04点击Finish完成
然后选中com.lihaozhe.day04包名右键新建class类name名字写入DemoTest(注意:类名后面的Test一定要写)点击Finish完成
在DemoTest中输入(注意:编写时不需要main方法)
public class DemoTest {
public void test01() {
System.out.println("我爱你中国");
}
此时的代码不会输出需要修改poml.xml文件,添加以下代码并保存
org.junit.jupiter junit-jupiter5.8.2 test
以上代码也可以去该网址拷贝点击最新版本: mvnrepository.然后在DemoTest中输入@Test后Alt+/导包,从这个**import org.junit.jupiter.api.Test;**地址导入
package com.lihaozhe.day04;
import org.junit.jupiter.api.Test;
public class DemoTest {
@Test
public void test01() {
System.out.println("我爱你中国");
}
}
然后双击选中test01,右键选择run as下的junit Test
控制台会输出
我爱你中国Java变量
变量就是在内存中开辟的一个地址空间可以形象的把变量比喻为一个容器
public class DemoTest {
@Test
public void test03() {
// 数据类型 空格 变量名 等于号 变量值 分号
int a = 10;
System.out.println(a);
}
}
变量 顾名思义 就是一个可以变化的量
public class DemoTest {
@Test
public void test05() {
int a = 10;
System.out.println(a);
a = 20;
System.out.println(a);
}
}
Java变量的声明方式
在方法中可以只声明变量不给这个变量赋值int c,b = 30,40; 这个写法是错误的
public class DemoTest {
@Test
public void test06() {
int a = 10;
int b = 20;
int c = 30, d = 40;
System.out.println(c);
System.out.println(d);
int e;
}
}
但是没有赋值的变量无法被读取 当读取这个变量的值的时候会报错
public class DemoTest {
@Test
public void test07() {
int e;
// System.out.println(e);
}
}
Java常量
常量 顾名思义 一个不可以变化的量
public class DemoTest {
@Test
public void test05() {
final int b = 30;
// b = 40;
System.out.println(b);
}
}
Java数据类型
数值型 字符型 布尔型
数值型整数型 浮点型
整数型byte —>1Bshort —>2Bint —>4Blong —>8B 浮点型
double —>8Bfloat —>4B 字符型
char —>2B它占2个字节是因为在Java中字符采用unicode编码(UTF-8) 布尔型
boolean —>1B
public class DemoTest {
@Test
public void test03() {
byte a = 10;
short b = 10;
int c = 10;
long d = 10L;
double e = 10.0d;
float f = 10.0f;
char g = 'g';
boolean h = true;
boolean i = false;
}
}
数据类型转换
数据类型在内存里存储的大小:小转大自送转 、大转小强制转
public class DemoTest {
@Test
public void test04() {
int a = 10;
long b = a;
System.out.println(a);
System.out.println(b);
// 强制类型转换
int c = (int) b;
System.out.println(c);
}
}
Java字符串
Java字符串声明赋值与读取
java10+ 可以在局部变量中使用var来为变量声明 可以根据数据值推断是该值的数据类型
public class StringTest {
@Test
public void test01() {
String slogan = "桃李不言下自成蹊";
var msg = "我爱你中国";
System.out.println(slogan);
System.out.println(msg);
}
}
print与println的区别
public class StringTest {
@Test
public void test02() {
String a = "桃李不言";
String b = "下自成蹊";
System.out.println(a);
System.out.println(b);
}
}
控制台会输出
桃李不言 下自成蹊
public class StringTest {
@Test
public void test03() {
String a = "桃李不言";
String b = "下自成蹊";
System.out.print(a);
System.out.print(b);
}
}
桃李不言下自成蹊
ln是换行
Java字符串拼接加号在字符串与变量之间代表字符串的拼接concat方法代表字符串的拼接
public class StringTest {
@Test
public void test04() {
String a = "桃李不言";
String b = "下自成蹊";
System.out.println(a + b);
System.out.println(a.concat(b));
}
}
Java转义字符
常用的字表符:换行"n"、转义字符"""、 回车"r"、水平制表符 tab"t"、空字符" "
public class StringTest {
@Test
public void test05() {
System.out.print("n");
System.out.print(""");
System.out.print("r");
System.out.print("t");
System.out.print(" ");
}
}
Java预定义格式
预定义格式:三对双引号指的是原样输出
public class StringTest {
@Test
public void test06() {
String a = "桃李不言";
String b = "下自成蹊";
// 预定义格式
System.out.print("""
桃李不言
下自成蹊
""");
}
}
Java运算符
数学运算符、比较运算符、逻辑运算符、位运算符
数学运算符+加:加号两端变量为数值型则代表数学运算符(注意:两端只要有一个变量为字符串则代表字符串拼接)
public class OperatorTest {
@Test
public void test01() {
int a = 10, b = 20;
int c = a + b;
System.out.println(c);
}
}
-减:减号两端变量为数值型则代表数学运算符
public class OperatorTest {
@Test
public void test01() {
int a = 10, b = 20;
int d = a - b;
System.out.println(d);
}
}
*乘:乘号两端变量为数值型则代表数学运算符
public class OperatorTest {
@Test
public void test01() {
int a = 10, b = 20;
int e = a * b;
System.out.println(e);
}
}
/除:在java中除法运算为地板除
public class OperatorTest {
@Test
public void test01() {
int a = 10, b = 20;
int f = a / b;
System.out.println(f);
int g = b / a;
System.out.println(g);
}
}
%取模:取模运算,只取余数
public class OperatorTest {
@Test
public void test01() {
int aa = 20;
int bb = 3;
int cc = aa % bb;
System.out.println(cc);
}
}
Java中浮点型计算能但是不精确
public class OperatorTest {
@Test
public void test01() {
nt a = 10, b = 20;
double h = (a + 0.0) / b;
double i = a / (b + 0.0);
double j = (a + 0.0) / (b + 0.0);
System.out.println(h);
System.out.println(i);
System.out.println(j);
float h = (float) ((a + 0.0) / b);
float i = (float) (a / (b + 0.0));
float j = (float) ((a + 0.0) / (b + 0.0));
System.out.println(h);
System.out.println(i);
System.out.println(j);
}
}
自增自减
public class OperatorTest {
@Test
public void test04() {
int num = 10;
num = num + 1;
System.out.println(num);
num += 1;
System.out.println(num);
num++;
System.out.println(num);
num = num - 1;
num -= 1;
num--;
System.out.println(num);
}
}
num++:先赋值后自增++num:先自增后赋值
public class OperatorTest {
@Test
public void test05() {
int num = 10;
System.out.println(num++);
System.out.println(++num);
System.out.println(num);
int a = num++;
System.out.println(a);
System.out.println(num);
}
}
比较运算符
// 比较运算符返回值为boolean 值// = = 等于 比较对象是否相等 10 = = 10返回True 10 == 20返回False// != 不等于 比较对象是否不相等 10 != 10返回False 10 != 20返回True// > 大于 返回x大于y 10 > 20返回False 20 > 10返回True// < 小于 返回x小于y 10 < 20返回True 20 < 10返回False// >= 大于等于 x是否大于等于y// <= 小于等于 x是否小于等于y
public class OperatorTest {
@Test
public void test07() {
System.out.println("10 == 10 >>>" + (10 == 10));
System.out.println("10 == 20 >>>" + (10 == 20));
System.out.println("10 != 10 >>>" + (10 != 10));
System.out.println("10 != 20 >>>" + (10 != 20));
System.out.println("10 > 20 >>>" + (10 > 20));
System.out.println("10 < 20 >>>" + (10 < 20));
System.out.println("10 >= 9 >>>" + (10 >= 9));
System.out.println("10 >= 10 >>>" + (10 >= 10));
System.out.println("10 >= 11 >>>" + (10 >= 11));
System.out.println("10 <= 9 >>>" + (10 <= 9));
System.out.println("10 <= 10 >>>" + (10 <= 10));
System.out.println("10 <= 11 >>>" + (10 <= 11));
}
}
JAVA逻辑运算符
逻辑运算的返回值为布尔型
逻辑与 &当两个条件同时满足的时候使用&符号&符号两端表达式返回结果同时为true的时候则整体返回值为true&符号两端表达式返回有一个为false则整体返回值为false 当第一个表达式返回结果为false的时候第二个表达式仍然要做计算
public class OperatorTest {
@Test
public void test09() {
int a = 10;
int b = 20;
int c = 30;
System.out.println(b > a & c > a);
System.out.println(a > b & c > a);
}
}
逻辑或 |
当两个条件同时满足其中一个条件的时候使用 | 符号| 符号两端表达式返回有一个为true则整体返回值为true 当第一个表达式返回结果为true的时候第二个表达式仍然要做计算| 符号两端表达式返回结果同时为false的时候则整体返回值为false
public class OperatorTest {
@Test
public void test09() {
int a = 10;
int b = 20;
int c = 30;
System.out.println(b > a | a > c);
System.out.println(a > b | a > c);
}
}
短路与 &&
当两个条件同时满足的时候使用&&符号&&符号两端表达式返回结果同时为true的时候则整体返回值为true&&符号两端表达式返回有一个为false则整体返回值为false 当第一个表达式返回结果为false的时候第二个表达式不再计算 直接整体返回false
public class OperatorTest {
@Test
public void test10() {
int a = 10;
int b = 20;
int c = 30;
System.out.println(b > a & c > a);
System.out.println(a > b & c > a);
}
}
短路或 ||
当两个条件同时满足其中一个条件的时候使用||符号||符号两端表达式返回有一个为true则整体返回值为true 当第一个表达式返回结果为true的时候第二个表达式不再计算 直接整体返回true||符号两端表达式返回结果同时为false的时候则整体返回值为false
public class OperatorTest {
@Test
public void test10() {
int a = 10;
int b = 20;
int c = 30;
System.out.println(b > a | a > c);
System.out.println(a > b | a > c);
}
}
逻辑非!
返回值为当前值的相反值 true取反就是false false取反就是true
public class OperatorTest {
@Test
public void test11() {
System.out.println(!true);
System.out.println(!false);
System.out.println(!!true);
System.out.println(!!false);
}
}
JAVA位运算符
按位与运算
public class OperatorTest {
@Test
public void test11() {
System.out.println(5 & 3);
}
}
按位或运算
按位异或运算 只有相同都是false(0) 只有不同才是true(1)
public class OperatorTest {
@Test
public void test11() {
System.out.println(5 ^ 3);
}
}
元数据按位亦或一个参考数据 得到一个新的数据 这个新的数据按位疑惑相同的参考数据得到元数据
public class OperatorTest {
@Test
public void test11() {
System.out.println(6 ^ 3);
}
}
~按位取反 注意:二进制中,最高位时符号位 1表示负数,0表示正数
public class OperatorTest {
@Test
public void test11() {
System.out.println(~3);
}
}
左移与右移
右移:相当于除以2的n次幂(>>>)表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0
public class OperatorTest {
@Test
public void test12() {
System.out.println(4 >>> 1);
System.out.println(4 >>> 2);
System.out.println(4 >>> 3);
System.out.println(-4 >>> 1);
}
}
(>>) 表示右移,如果该数为正数,则高位补0,若为负数,则高位补1
public class OperatorTest {
@Test
public void test12() {
System.out.println(4 >> 1);
System.out.println(4 >> 2);
System.out.println(4 >> 3);
System.out.println(-4 >> 1);
}
}
左移:相当于乘以2的n次幂反码 补码
public class OperatorTest {
@Test
public void test12() {
System.out.println(4 << 1);
System.out.println(4 << 2);
System.out.println(-4 << 1);
}
}



