Java编程入门

本文介绍了Java编程的基础知识,包括代码辅助、JDK与JRE的区别、数据类型、运算符、逻辑控制、方法定义及重载,还涵盖了面试常问问题和实战示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

视频来自:阿里云大学—Java编程入门笔记

一、Java 基本概念

1.Alt+/ :代码辅助菜单

2.JAVA工作方式:

  • 编写源代码文件 *.java
  • 编译后产生字节码文件 java文件路径下cmd-javac *.java
  • JVM找到CLASSPATH的路径加载字节码文件,解释程序 cmd- java *

3.JDK与JRE区别?

JDK是Java的开发工具包,它提供了JAVA的开发环境(编译器javac将java文件翻译为class文件)和运行环境,用于解析class文件。

JRE是Java的运行环境,面向使用者,只能运行JAVA程序,它包括了JAVA虚拟机、JAVA平台核心类和支持文件,不包含开发工具(编辑器和调试器等)

4.面试题:PATH和CLASSPATH的区别?

PATH:是操作系统提供的路径配置,定义所有可执行程序的路径

CLASSPATH:是由JRE提供的,用于解释JAVA程序解释时类加载路径,默认为当前目录加载

5.注释:

//单行注释
/*
多行注释
*/

二、数据类型分类

2.1 基本数据类型
  • 数值型:整型(byte short int long: 默认0);浮点型(float double: 默认0.0)
  • 布尔型:boolean:默认false
  • 字符型:char:默认’\u0000’ ,可以保存中文字
  1. 默认常量整数是int型,默认小数是double型

  2. 数据溢出:在对数字进行处理时如果超出了最大的保存范围,将出现循环问题。

    • 小转大自动适配,但不能将大范围转换为小范围数据类型(丢失) 采用强制转换

      long a = 100L;
      float y = 10.1F;   
      float x = (float)10.2;
      
    • 两数运算时,结果取大的数据类型;注意选择的数据类型,决定小数点

    • char 型与int可以转换(ASCLL码),char也可用来保存中文

      A:65 —Z:90 a:97—z:122

      char c = '中';
      
    • +即可以表示字符串的连接,也可以表示算术。

      其中范围String>double>int

      int x = 10; double y = 0.2;
      String str = "计算结果:"+(x+y);                 
      
    • 注意:Java中任何变量都要指定数据类型

  3. 转义字符

    TAB:\t 、 换行:\n 、 ’ : \ ’ 、 “ :\ ” 、 \ : \ \

  4. 简化运算(减少内存空间):+= 、 -= 、 *= 、 %= 、 /=

    ++i,–i:先进行变量的自增、减,而后再进行数字运算

    i++,i–:先进行变量计算,在自增、减

2.2 引用数据类型

牵扯到内存关系的使用,包括数组、类、接口

2.3 使用规则
  • 整数首选int ,小数首选double
  • 数据传输、文字编码转换用byte
  • 处理中文方便用char
  • 描述内存/文件大小,描述表的主键列用long

三、Java运算符

3.1 三目运算符

关系运算 ? 关系满足时内容:关系不满足时内容

max = x > y ? x:y;    //保存最大
max =x > y ? (x > z?x : z):(y > z?y : z); //指出三个最大
3.2 位运算

与(&)、或(|)、非(~)、异或(^)、移位(<<)

面试题:请解释&和&&、|和||的区别?

1.&和|两个运算符可以进行逻辑运算和位运算

2.在逻辑运算中还可以用&&和||,&&中有一个false便false;||中有一个true便是true

四、逻辑控制

4.1 IF分支
double score = 90.00;
if(score >= 90 && score < 100) {
	System.out.println("Excellent!");
}else if(score >= 60) {
	System.out.println("Good!");
}else {
	System.out.println("Failed!");
}
4.2 Switch分支

switch是开关语句,根据内容可以用来判断(int,char,String)

String str = "Hello";
switch(str) {
case "hello":
	System.out.println("hello!");
	break;
case "Hello":
	System.out.println("Hello!");
	break;
default:
	System.out.println("没有匹配成功!");
}
4.3 while循环结构

while循环:先判断后执行;do-while循环:先执行后判断。

只要满足布尔表达式为True。

//实现1-100的累加
int sum = 0;
int i = 0;
while (i <= 100) {
	sum += i;
	i++;
}
System.out.println(sum);
4.4 for 循环控制

for(定义循环的初始化数值;循环判断;修改循环数据结构){}

int sum = 0;
for (int x= 1; x <= 100; x++) {
	sum += x;
}
System.out.println(sum);

**注意:**对于while和for循环的选择只有一个标准:

  • 在明确循环次数的情况下优先选择for
  • 在不知循环次数但是知道循环条件的用while循环
4.5 循环控制
  • break:退出整个循环结构
  • continue:结束当前轮次循环,继续下一个循环
4.6 循环嵌套

1.打印9*9乘法表:

for(int i = 1; i<=9; i++){
	for(int j = 1; j<= i;j++){
		System.out.print(j+" * "+i+" = "+(i*j)+"\t");
	}
	System.out.println("");
}

2.打印△

int line = 10;
for(int i = 1;i<=line;i++){
	for(int j = 1;j<=line-i;j++){
		System.out.print(" ");	
	}
	for(int num = 1;num<= i ; num++){
		System.out.print("* ");
	}
	System.out.println("");
}

五、方法的定义及使用

public:该数据成员、成员函数对所有用户开放,所有用户都能直接调用。

private:除了自己的class,谁都无法调用

方法就是一段可以被重复调用的代码块

前提:方法在主类中定义,并且由主方法直接调用

public static 返回值类型 方法名称([参数类型 变量],……){
	//方法执行代码
    [return 返回值;]
}

**说明:**无返回值类型时用void,此时方法中可以利用return来结束调用。

5.1 方法重载

当方法名称相同时,而传递的参数类型或个数不同,能够对同一个方法提供更多的选择

public static int sum(int x,int y){
    return x+y;
}
public static double sum(double x,double y){
	return x+y;
}
public static int sum(int x,int y,int z){
    return x+y+z;
}
5.2 方法递归调用

在方法中调用本方法

  • 一定要设置方法递归调用的结束条件
  • 每一次调用过程之中要修改传递的参数条件
sum(100);

public static int sum(int num){
    if(num == 1){
        return 1;
    }else{
        return sum(num-1)+num;
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值