JAVA基础知识

一、计算机语言发展史

  1. 第一代 机器语言
  2. 第二代 汇编语言
  3. 第三代 高级语言

    面向过程:C、PASCAL、COBOL
    面向对象:C++、Python、JAVA、C#

二、java搭建

2.1 JAVA特性

  1. 可移植性
  2. 简单性
  3. 面向对象
  4. 高性能
  5. 安全性
  6. java核心机制-垃圾回收机制和跨平台原理

2.2 JDK、JRE、JVM区别

  1. jdk面向开发者
  2. jre面向使用者
  3. jvm java内部运行核心

2.3 JDK目录结构

  1. bin开发工具执行文件;
  2. jre是java的运行环境;
  3. lib是java的运行类库;
  4. javac.exe 编译,把java源码编译成可识别的字节码。
  5. java.exe 运行,将字节码文件翻译成机器语言进行运行。

2.4 环境变量

  1. path指明java命令执行路径,使得系统可以在任何路径下识别java命令;
  2. classpath 指明class文件加载路径;
  3. Java_home指明jdk安装路径。

环境搭建验证:

Win+R -----cmd----java-----version

三、java基本语法

3.1 注释

  1. 单行注释 //
  2. 多行注释 /* */
  3. 文档注释 以*/结尾

3.2 标识符

给包、类、变量、或方法命名

注意:命名规则

  1. 数字、字母、下划线、美元符号
  2. 不可使用数字开头、不可使用关键字(关键字为小写)
  3. 见名知意
  4. 大小写敏感

3.3 常量和变量

  1. 可以在一行中声明多个变量,但是不提倡;
  2. 有意义的变量一定要明确变量名,不要全部
    a、b、c、a1、s之类的变量;
  3. 声明变量之后请立即初始化(放在一行);

3.4 数据类型

  1. 基本数据类型:

数值(整数、浮点类型精确到后七位)
字符(两个字节)
布尔(逻辑判断两个常量值,true和false)

注意: 数据类型转换

自动转换
强制转换

  1. 引用数据类型

类、接口、组

3.5 运算符

  1. 算数运算符(/相除,%取余)
  2. 赋值运算符
  3. 扩展运算符
  4. 逻辑运算符:左右连接的是布尔类型的操作数;
  5. 位运算符:左右连接是具体的数值。

"<<"左移
">>"有符号右移
">>>"无符号右移
"&"与
"|"或
"^"异或
"~"取反

运算符优先级:

3.6 流程控制

  1. 顺序

先执行a,再执行b

  1. 选择

如果…则…

  1. 循环

如果…,则再继续…
循环跳转:continue、break

while( 布尔表达式 ) {
  //循环内容
}

do {
       //代码语句
}while(布尔表达式);
//
for(初始化; 布尔表达式; 更新) {
    //代码语句
}

3.7 分支语句

  1. if-else
  2. switch-case
switch(expression){
    case value :
       //语句
       break; //可选
    case value :
       //语句
       break; //可选
    //你可以有任意数量的case语句
    default : //可选
       //语句
}

四、IDEA使用

4.1 IDEA配置、使用、常用设置

  1. 代码模板

实时模板 Live Templates
后缀完成,只能有,不能改 Postfix Completion

  1. 字体背景等。

4.2 Maven介绍及安装配置

跨平台项目管理工具

  1. 项目对象模型
  2. 依赖管理系统
  3. 一个项目生命周期
  4. 一组标准集合
  5. 插件目标

五、练习作业

  1. Hello world!
public class trytest {
    public static void main(String[] args) {
        System.out.println("Hello world!");
    }
}

结果:

Hello world!

  1. 求三个数的最大值;
		int one = 33;
        int two = 24;
        int three = 15;
        int max;
        if(one > two){
            if (one > three){
                max = one;
            }
            else {
                max = three;
            }
        }
        else{
            if(two>three){
                max = two;
            }
            else max = three;
        }
        System.out.println("三个数的最大值为:"+max);
  1. 1+3…97+99之和
		int i = 1;
        int sum = 0;
        while(i<100){
            if(i%2!=0) {
                sum = sum + i;
            }
            i++;
        }
  1. 1~100之间所有能被7整除的偶数
public class trytest {
    public static void main(String[] args) {
        int i = 1;
        while(i<=100){
            if(i%7==0 & i%2==0){
                System.out.println(i);
            }
            i++;
        }
    }
}
  1. 判断给定的某年份是否为闰年

闰年的判断规则如下:
(1)若某个年份能被4整除但不能被100整除,则是闰年;
(2)若某个年份能被400整除,则也是闰年

		Scanner s = new Scanner(System.in);
        System.out.print("输入年份:");
        int year = s.nextInt();
        if((year%4==0&year%100!=0)|year%400==0)
        {
            System.out.println(year+"是闰年");
        }
        else
        {
            System.out.println(year+"不是闰年");
        }
  1. 打印输出乘法口诀、实心菱形、空心菱形
		//乘法表
		int a,b;
        System.out.println("乘法表:");
        for (b = 1; b < 10; b++)
        {
            for(a = 1; a <= b; a++)
            {
                System.out.print(a+"*"+b+"="+a*b+" ");
            }
            System.out.println();
        }
        //实心菱形
        int m,n;
        System.out.println("实心菱形:");
        for (m = 0; m < 17; m++)
        {
            if(m<9){
                for(n = 0; n < 17; n++)
                {
                    if((8-m)<=n&n<=(8+m))
                        System.out.print("*");
                    else
                        System.out.print(" ");
                }
                System.out.println();
            }
            else
            {
                for(n = 0; n < 17; n++)
                {
                    if((m-8)<=n&n<=24-m)
                        System.out.print("*");
                    else
                        System.out.print(" ");
                }
                System.out.println();
            }

        }
        //空心菱形
        int m1,n1;
        System.out.println("空心菱形:");
        for (m1 = 0; m1 < 17; m1++)
        {
            if(m1<9){
                for(n1 = 0; n1 < 17; n1++)
                {
                    if((n1==8-m1) | n1==8+m1)
                        System.out.print("*");
                    else
                        System.out.print(" ");
                }
                System.out.println();
            }
            else
            {
                for(n1 = 0; n1 < 17; n1++)
                {
                    if(n1==m1-8 || n1==24-m1)
                        System.out.print("*");
                    else
                        System.out.print(" ");
                }
                System.out.println();
            }
        }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值