【使用eclipse构建java项目】
目录
- 使用eclipse构建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 { /* 这是第一个Java程序 * 它将输出 Hello World * 这是一个多行注释的示例 */ public static void main(String[] args){System.out.println("Hello World"); }}
文档型注释
文档型注释: 一般用户注释一个类或与一个方法
public class HelloWorld{/ * 程序入口 * @param args */ 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应用和关闭
文档型注释如:
/ *@author (创作者姓名) *@version 1.0.0 ${date} ${time} */
可以插入一个变量日期、时间等
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文件,添加以下代码并保存
<dependencies><dependency><groupId>org.junit.jupiter</groupId><artifactId>junit-jupiter</artifactId><version>5.8.2</version><scope>test</scope></dependency></dependencies>
- 以上代码也可以去该网址拷贝点击最新版本: mvnrepository.
- 然后在DemoTest中输入@Test后Alt+/导包,从这个import org.junit.jupiter.api.Test;地址导入
package com.lihaozhe.day04;import org.junit.jupiter.api.Test;public class DemoTest {@Testpublic void test01() {System.out.println("我爱你中国");}}
- 然后双击选中test01,右键选择run as下的junit Test
控制台会输出
我爱你中国
Java变量
- 变量就是在内存中开辟的一个地址空间
- 可以形象的把变量比喻为一个容器
public class DemoTest {@Testpublic void test03() {// 数据类型 空格 变量名 等于号 变量值 分号int a = 10;System.out.println(a);}}
变量 顾名思义 就是一个可以变化的量
public class DemoTest {@Testpublic void test05() {int a = 10;System.out.println(a);a = 20;System.out.println(a);}}
Java变量的声明方式
- 在方法中可以只声明变量不给这个变量赋值
- int c,b = 30,40; 这个写法是错误的
public class DemoTest {@Testpublic 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 {@Testpublic 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 —>1B
- short —>2B
- int —>4B
- long —>8B
浮点型
- double —>8B
- float —>4B
字符型
- char —>2B
- 它占2个字节是因为在Java中字符采用unicode编码(UTF-8)
布尔型
- boolean —>1B
public class DemoTest {@Testpublic 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 {@Testpublic 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 {@Testpublic void test01() {String slogan = "桃李不言下自成蹊";var msg = "我爱你中国";System.out.println(slogan);System.out.println(msg);}}
print与println的区别
public class StringTest {@Testpublic void test02() {String a = "桃李不言";String b = "下自成蹊";System.out.println(a);System.out.println(b);}}
控制台会输出
桃李不言下自成蹊
public class StringTest {@Testpublic void test03() {String a = "桃李不言";String b = "下自成蹊";System.out.print(a);System.out.print(b);}}
桃李不言下自成蹊
ln是换行
Java字符串拼接
- 加号在字符串与变量之间代表字符串的拼接
- concat方法代表字符串的拼接
public class StringTest {@Testpublic void test04() {String a = "桃李不言";String b = "下自成蹊";System.out.println(a + b);System.out.println(a.concat(b));}}
Java转义字符
常用的字表符:换行"\n"、转义字符"""、 回车"\r"、水平制表符 tab"\t"、空字符"\0"
public class StringTest {@Testpublic void test05() {System.out.print("\n");System.out.print("\"");System.out.print("\r");System.out.print("\t");System.out.print("\0");}}
Java预定义格式
预定义格式:三对双引号指的是原样输出
public class StringTest {@Testpublic void test06() {String a = "桃李不言";String b = "下自成蹊";// 预定义格式System.out.print("""桃李不言下自成蹊""");}}
Java运算符
数学运算符、比较运算符、逻辑运算符、位运算符
数学运算符
- +加:加号两端变量为数值型则代表数学运算符(注意:两端只要有一个变量为字符串则代表字符串拼接)
public class OperatorTest {@Testpublic void test01() {int a = 10, b = 20;int c = a + b;System.out.println(c);}}
- -减:减号两端变量为数值型则代表数学运算符
public class OperatorTest {@Testpublic void test01() {int a = 10, b = 20;int d = a - b;System.out.println(d);}}
- *乘:乘号两端变量为数值型则代表数学运算符
public class OperatorTest {@Testpublic void test01() {int a = 10, b = 20;int e = a * b;System.out.println(e);}}
- /除:在java中除法运算为地板除
public class OperatorTest {@Testpublic 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 {@Testpublic void test01() {int aa = 20;int bb = 3;int cc = aa % bb;System.out.println(cc);}}
- Java中浮点型计算能但是不精确
public class OperatorTest {@Testpublic 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 {@Testpublic 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 {@Testpublic 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 {@Testpublic 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 >>" + (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 >>" + (10 <= 9));System.out.println("10 >>" + (10 <= 10));System.out.println("10 >>" + (10 <= 11));}}
JAVA逻辑运算符
逻辑运算的返回值为布尔型
逻辑与 &
- 当两个条件同时满足的时候使用&符号
- &符号两端表达式返回结果同时为true的时候则整体返回值为true
- &符号两端表达式返回有一个为false则整体返回值为false 当第一个表达式返回结果为false的时候第二个表达式仍然要做计算
public class OperatorTest {@Testpublic 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 {@Testpublic 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 {@Testpublic 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 {@Testpublic 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 {@Testpublic void test11() {System.out.println(!true);System.out.println(!false);System.out.println(!!true);System.out.println(!!false);}}
JAVA位运算符
按位与运算
public class OperatorTest {@Testpublic void test11() {System.out.println(5 & 3);}}
按位或运算
按位异或运算 只有相同都是false(0) 只有不同才是true(1)
public class OperatorTest {@Testpublic void test11() {System.out.println(5 ^ 3);}}
元数据按位亦或一个参考数据 得到一个新的数据 这个新的数据按位疑惑相同的参考数据得到元数据
public class OperatorTest {@Testpublic void test11() {System.out.println(6 ^ 3);}}
~按位取反 注意:二进制中,最高位时符号位 1表示负数,0表示正数
public class OperatorTest {@Testpublic void test11() {System.out.println(~3);}}
左移与右移
- 右移:相当于除以2的n次幂
- (>>>)表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0
public class OperatorTest {@Testpublic 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 {@Testpublic 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 {@Testpublic void test12() {System.out.println(4 << 1);System.out.println(4 << 2);System.out.println(-4 << 1);}}