2 java环境搭建
2.1 安装jdk和配置环境变量
# java 的开发环境,需要安装jdk
# java的运行环境,运行java项目,正常只需要装jre即可,但是好多人都装jdk
# 无论运行java程序还是开发java程序,直接装jdk即可
# jdk:java开发环境 Java Development Kit
# jre:java运行环境
# jvm:java虚拟机,java编译后的字节码文件运行在它上面
# jdk包含jre,jre包含jvm
# jadx是用java开发的,运行它,就装了jdk8,所以现在不需要装了
# 如果当时没弄,双击给你的安装包,一路下一步安装即可(我装在这里了):D:\Program Files\Java
-在安装jdk后,会提示你是否安装jre--》这个提示,可以安装也可以不安装,建议安装
-不装的话,其实在jdk的安装路径下有个jre
# 打开cmd,执行
java -version #如果有输出,说明安装成功
javac #有输出,才ok,如果没有,需要配置环境变量
# 配置环境变量 如下图配置
-在path中加入两个地址:
-D:\Program Files\Java\jdk-1.8\bin
-D:\Program Files\Java\jre\bin
-我写成了这样,是因为我配置了一个JAVA_HOME 的key,对应 ,方便以后升级,以后如果装了java其他版本,只需要改JAVA_HOME,其他的不需要懂
JAVA_HOME D:\Program Files\Java\jdk-1.8
%JAVA_HOME%\bin #D:\Program Files\Java\jdk-1.8\bin
%JAVA_HOME%\jre\bin# D:\Program Files\Java\jdk-1.8\jre\bin
2.2 第一个helloworld
#1 开发环境搭建完了,我们可以开心的写java代码了
#2 使用记事本,notpad++,打开一个空文件,开始写代码即可
#3 写入以下内容
public class HelloWorld{
public static void main(String[] args){
System.out.println("hello world");
}
}
# 4 保存,放到某个位置,我放到了 d盘根路径
# 5 打开cmd窗口,执行编译 --->生成一个同名的 HelloWorld.class 字节码文件
javac HelloWorld.java
# 6 运行字节码文件
java HelloWorld # 就可以运行了,不要带 .class
# 7 顺利吧HelloWorld打印出来
2.3 编辑器选择和安装
# 要写好java代码,需要有一款趁手的编辑器 ---》python---》使用pycharm编写
# 有如下三种选择
# 1 Eclipse https://www.eclipse.org/downloads/ 早些年有人用,现在几乎不用了
Eclipse是一个免费的开源Java IDE,提供了丰富的功能和插件扩展。它支持Java应用程序、Web应用程序和企业级应用程序的开发,并具有强大的代码编辑、调试和测试工具。
# 2 My Eclipse 收费的 https://www.genuitec.com/products/myeclipse/ 我刚工作那会用它
MyEclipse是一个专为Java开发而设计的集成开发环境(IDE),它是Eclipse IDE的一个商业化版本。MyEclipse提供了许多功能和工具,旨在提高Java开发人员的生产力和效率
# 3 IntelliJ IDEA:https://www.jetbrains.com/idea/download/other.html 用的最多,咱们也用它
IntelliJ IDEA是一种商业化的Java IDE,也有免费的社区版可用。它提供了智能代码完成、代码检查和重构等功能,支持Java开发以及其他相关技术,如Spring和Hibernate,同属于Jetbrains系列,使用习惯跟Pycharm类似,我们选择此编辑器
# 必须要使用 IDEA---》python转过来的,使用pychrm很习惯,使用idea也会很喜欢
捷克的jetbrains公司,有很多编辑器---》使用习惯,完全一样,只是写的代码不一样,你会非常适用
-python---》pycharm
-php---》phpStorm
-前端vue---》webStorm
-go----》goland
-java---》IDEA
-c语言---》clion
# 如果你喜欢使用别的编辑器:vscode .... 使用习惯,快捷方式都不一样,你会很难受
# 后期咱们要做安卓开发---》装一个ide---》AndroidStudio编辑器----》用起来你会发现它跟Pycharm,idea很像---》原因是---》谷歌公司买了jetbrains+ADT 组装成了这个ide,免费,谷歌花钱了
# 安装IDEA
-下载:2023.1 版本
-一路下一步安装
# 这个软件是收费的,很贵---》破解---》跟破pycharm一模一样
-给你的破解软件 来到这个路径:
.\jihuo-tooll-2023.1\jetbra\scripts
-win:双击运行 install-current-user.vbs 执行完会弹出 done
-打开idea,填入我给的破解码,点activite
2.4 新建java项目并运行
3 java语法快速入门
3.1 程序入口
# java程序是有入口的,所有java代码的运行,必须从这开始
-从一个类下的public static void main(String[] args) 这个方法开始运行
public class HelloWorld {
public static void main(String[] args) {
// 以后无论写多少代码,都是从这个位置开始执行
System.out.println("hello world");
System.out.println("hello world");
System.out.println("hello world");
System.out.println("hello world");
}
}
3.2 文件名
# 文件名命名规范
1 一个文件中,只能有一个叫public的类,并且文件名必须跟这个类同名,否则报错
2 文件中可以有多个类,但是不能再出现 public的类
3 如果文件中有多个类,并且没有一个用public修饰的,文件名可以随意
# 一个类长这样
class Animal {
}
# java 是一个纯面向对象语言,所有代码必须写在类中
3.3 类规范
##1 类命名规范之---》类的首字母必须大写,并且使用驼峰命名
HelloWorld UserInfo
java中类名,方法名,变量名都建议使用驼峰命名法 AgeOfPerson
python中类名使用驼峰; 方法,函数名变量名使用蛇形命名(下划线的) age_of_person
## 2 类的修饰符 (写在类前面的单词),只有如下两种
-public
-不写(default)
## 3 类中成员(变量,方法)有修饰符
-public:公有的,在其他类中,所有的类,可以直接使用
-protected:受保护的,只能在当前包下的类中使用---》不明白包的概念--》后面会讲
-private:私有的,只能在当前类中使用
-不写(default):只能在当前包下的类中使用
### 4 类中静态成员(变量和方法)---》使用static修饰
使用static修饰了成员(变量,方法),属于类,类来调用它
### 5 类中的方法:void表示该函数没有返回值,如果有返回值,必须写返回值类型
-方法又分用static修饰的,不用static修饰的
4 java基础语法
4.1 注释
# 1 单行注释
以双斜杠“//”标识,只能注释一行内容,用在注释信息内容少的地方
快捷键:【注释 ctrl+/ 】 【 取消注释 ctrl+/ 】
# 2 多行注释
包含在“/*”和“*/”之间,能注释很多行的内容,可以换行
快捷键:【注释 ctrl+shift+/ 】 【取消注释 ctrl+shift+\ 】
### 3 文档注释
包含在“/**”和“*/”之间,也能注释多行内容,一般用在类、方法和变量上面,用来描述其作用。注释后,鼠标放在类和变量上面会自动显示出我们注释的内容
/**
* 定义了一个speak方法,传入两个参数a和b,返回 只是int类型
* @param a
* @param b
* @return
*/
4.2 变量和常量
#1 变量的定义
变量类型 变量名 = 变量值
//1 定义变量 定义了一个字符串类型变量 在方法中定义的变量,不能写修饰符
String name ="justin";
//1 定义变量 定义了一个int类型变量
int age =19;
#2 python中没有真正的常量,咱们约定俗成 全大写表示常量
# java中使用 final 修饰的是常量,以后不能改变
final String hobby="篮球";
hobby="足球"; // 常量不允许修改
4.3 输入输出
# 输出:打印到控制台上 print
//1 输出
// 输出并换行
System.out.println("justin");
System.out.println(18);
// 输出不换行
System.out.print("彭于晏");
System.out.print(33);
// 格式化输出
String name ="xxx";
int age =99;
System.out.printf("name的值是:%s\n",name);
System.out.printf("age的值是:%d\n",age);
# 输入:从控制台接受输入--有点小麻烦--》但是用的少 input
// 2 输入
// 实例化得到对象
Scanner sc = new Scanner(System.in);
// 开始获取用户的输入 文字,读一行
String inputName = sc.nextLine();
System.out.printf("您输入的内容是:%s", inputName);
4.4 条件语句
4.4.1 if else
# if ------ else if ----- else
# 用户输入一个分数,打印出是优秀,良好,及格,不及格
import java.util.Scanner;
public class Demo03 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String inputScore = sc.nextLine(); // 读出来是字符串类型
// 强制类型转换,把inputScore字符串转成数字
int score = Integer.valueOf(inputScore);
if (score >= 90 && score <= 100) {
System.out.println("优秀");
} else if (score > 70) {
System.out.println("良好");
} else if (score >= 60) {
System.out.println("及格");
} else {
System.out.println("不及格");
}
}
}
4.4.2 switch(了解)
import java.util.Scanner;
// 优雅的替换掉if-else 实际用的不多,python没有
public class Demo4 {
public static void main(String[] args) {
System.out.println("请输入您的分数:");
Scanner scanner = new Scanner(System.in);
int score = Integer.valueOf(scanner.nextLine()); // 强制类型转换为int
switch (score) {
case 99:
System.out.println("恭喜您99分");
break;
case 88:
System.out.println("恭喜您88分");
break;
default:
System.out.println("不知道多少分");
}
}
}
4.5 循环
# while
# do while
# for
4.5.1 while循环
int count =0;
while (count<10){
System.out.println(count);
//count++;
//count+=1;
count=count+1;
}
4.5.2 do while循环
int count = 0;
do {
System.out.println(count);
count++;
} while (count < 10);
4.5.3 for循环
String [] names={"lqz","justin","彭于晏"};
for (int i = 0; i < names.length; i++) {
System.out.println(names[i]);
}
for (String n:names) {
System.out.println(n);
}
break/continue跟其他语言同理
5 数据类型
# java 中的基础数据类型 多个元素的集合类型先不讲
###java中基础数据类型如下
# 字节类型 byte
# 整数类型:
byte 带符号字节型 8位 -128 ~ 127
short 带符号字节型 16位 -32768 ~ 32767
int 带符号字节型 32位 -231 -2147483648 ~ 2147483647
long 带符号字节型 64位 -263 -9223372036854775808 ~ 9223372036854775807
# 小数类型:浮点型
float
double
# 字符类型 char
# 字符串类型 String
# 数组类型 int[] String[] ...
# 布尔类型 blooean
5.1 字节类型
// 1 字节类型 -128到 127 ---》一个字节表示一个字符---》
// 一个字节有8个比特位 2的8次方种变化,第一位表示正负 +- 2的7次方-1 种变化 还要表示0
byte s1='b'; // 可以用单引号引起来的一个 ascii的字符
byte s2=97; // 可以是个数字
System.out.println(s1); // 打出来是数字
System.out.println(s2);
System.out.println((char) s1); // 打印ascii码的值
5.2 整数类型
byte 带符号字节型 8位 -128 ~ 127 #1个字节表示
short 带符号字节型 16位 -32768 ~ 32767 #2个字节表示
int 带符号字节型 32位 -231 -2147483648 ~ 2147483647 #4个字节表示
long 带符号字节型 64位 -263 -9223372036854775808 ~ 9223372036854775807 # 8个字节表示
# 以后要定义人的年龄 可以使用byte类型表示
// 2 整数类型
byte a1 = 98;
short a2 = 666;
int a3 = 9999;
long a4 = 993932929;
5.3 小数类型
//float 单精度 32位
//double 双精度 64位
float f=1.123456789012f;
System.out.println(f);
double d=1.12345678901234567890d;
System.out.println(d);
5.4 字符类型
char v1 = 'x';
char v2 = '贾';
String v3 = "彭于晏"; 字符串使用双引号
5.5 字符串类型
# 1 必须用双引号引起来
5.6 数组类型
// 数组类型
String [] names={"lqz","张三","李四"};
names[0]="xxx";
System.out.println(names[0]);
System.out.println(names); //[Ljava.lang.String;@1b6d3586
System.out.println(Arrays.toString(names)); //[Ljava.lang.String;@1b6d3586
// 字节数组转字符串
byte [] aa={97,'u',98};
String v1=new String(aa);
System.out.println(v1);
// 字符数组转字符串
char [] aa1={'中','国','爱'};
String v11=new String(aa1);
System.out.println(v11);
5.7 布尔类型
boolean b=true;
b=false;
System.out.println(b);
标签:java,String,基础,数据类型,System,---,println,out
From: https://www.cnblogs.com/simon1993/p/17743133.html