Java学习

目录

模块一 Java入门 

人机交互

Java的前世今生

Java为什么这么火

JRE和JDK

模块二 - 小概念

注释&关键字

字面量

变量

计算机的存储


模块一 Java入门 

人机交互

window mac 施乐 ->第一个图形化界面  乔布斯 vs 比尔盖茨

使用图形化界面 缺点 :1.消耗内存 2.运行速度慢

CMD:在windows中 利用命令行的方式操作计算机

可以打开文件,打开文件夹,创建文件夹等等。

打开CMD

1.win+R

2.输入cmd

3.回车

(Desktop也是一个文件夹) 

常用CMD命令

盘符名称+冒号

说明:盘符切换

举例:E:回车,表示切换到E盘

dir(会将一些你隐藏的东西都全部展示出来)

说明:查看当前路径下的内容

cd目录

说明:进入单级目录

举例:cd yjy(如果文件名太长 那么可以打输入一部分 然后按tab键)

cd..

说明:回退到上一级目录

cd 目录1\目录2\...

说明:进入多级目录。

举例:cd yju\java

cd \

说明:回退到盘符目录。

cls

说明:清屏

exit

说明:退出命令提示符窗口。

练习:需求:利用cmd命令打开自己电脑上的QQ

Java学习_第1张图片

 Java学习_第2张图片

Java学习_第3张图片

Java概述和学习方法

 Java是什么?->一门非常火热的编程语言

Java程序初体验

下载JDK

Java学习_第4张图片

Java学习_第5张图片

Java学习_第6张图片 Java学习_第7张图片

 常见问题:标点符号必须英文符号,单词拼写该大写必须大写

环境变量:java 和 javac 配置好了环境变量

Java学习_第8张图片

 Java学习_第9张图片

 Java学习_第10张图片

Java学习_第11张图片 ANSI不行就试试UTF-8(无BOM)

Java的前世今生

Java学习_第12张图片

Java学习_第13张图片

Java学习_第14张图片 Java学习_第15张图片

Java学习_第16张图片 Java学习_第17张图片

 Java学习_第18张图片

Java为什么这么火

Java学习_第19张图片

 Java学习_第20张图片

Java学习_第21张图片 Java学习_第22张图片

Java跨平台原理

 Java学习_第23张图片

Java学习_第24张图片

Java学习_第25张图片 Java学习_第26张图片

 Java学习_第27张图片

 Java学习_第28张图片

Java学习_第29张图片 Java学习_第30张图片

Java学习_第31张图片

JRE和JDK

JVM(Java Virtual Machine):Java虚拟机,真正运行Java程序的地方

Java学习_第32张图片Java学习_第33张图片

Java学习_第34张图片

模块二 - 小概念

注释&关键字

Java学习_第35张图片

Java学习_第36张图片 Java学习_第37张图片

Java学习_第38张图片 Java学习_第39张图片

字面量

类名要和文件名保持一致

小技巧:点击一下文件名 按F2 再ctrl+c 再回代码ctrl+v

null不能直接打印 那么只能用字符串进行打印

Java学习_第40张图片

 Java学习_第41张图片

Java学习_第42张图片

变量

当某个数据经常发生改变时,我们也可以用变量存储.当数据变化时,只要修改变量里面记录的值即可.

数据类型 变量名 = 数据值;

变量的使用方式:输出打印 参与计算 修改记录的值

 变量的注意事项:只能存一个值

变量名不允许重复定义 一条语句可以定义多个变量 变量在使用之前一定要进行赋值

计算机的存储

二进制

Java学习_第43张图片

Java学习_第44张图片

Java学习_第45张图片

数据类型

Java学习_第46张图片

 Java学习_第47张图片

 long类型变量:需要加入L标识(大小写都可以)

float类型变量:需要加入F标识(大小写都可以)

标识符

就是给类,方法,变量等起的名字

Java学习_第48张图片

 Java学习_第49张图片

 键盘录入

IDEA的概述和下载安装 

idea中的第一个代码

idea扩展设置和项目,模块的操作

运算符

Java学习_第50张图片

算术运算符

隐式转换和强制转换

Java学习_第51张图片

Java学习_第52张图片 Java学习_第53张图片

Java学习_第54张图片 Java学习_第55张图片

字符串和字符的加操作

Java学习_第56张图片

Java学习_第57张图片 Java学习_第58张图片

Java学习_第59张图片

自增自减运算符

Java学习_第60张图片

赋值运算符

Java学习_第61张图片

Java学习_第62张图片 Java学习_第63张图片

Java学习_第64张图片

逻辑运算符

短路逻辑运算符

三元运算符和运算符优先级

Java学习_第65张图片

原码反码补码

什么是原码?

原码:十进制数据的二进制表现形式,最左边是符号位,0为正,1为负

56--->00111000

     8*bit(比特位)=1*byte(字节)最大值0111111->+127 最小值11111111->-127

利用原码对正数进行计算是不会有问题的.

原码的弊端: 10000001-> 实际值-1(转成十进制)   二进制(-0+1=1)

但是如果是负数计算,结果就出错,实际运算的结果,跟我们预期的结果是相反的.

反码:为了解决原码不能计算负数的问题出现的

计算规则:整数的反码不变,负数的反码在原码的基础上,符号位不变,数值取反,0变1,1变0.

-56->10111000(原) 

-56->110001111(反)

  Java学习_第66张图片

 Java学习_第67张图片

Java学习_第68张图片

Java学习_第69张图片 Java学习_第70张图片

Java学习_第71张图片 Java学习_第72张图片

Java学习_第73张图片

Java学习_第74张图片 Java学习_第75张图片

 Java学习_第76张图片

Java学习_第77张图片

左移 *2 

Java学习_第78张图片 Java学习_第79张图片

 模块三 判断与循环

if-else if -if

switch

 default 省略的话语法不会有问题但是不推荐这么做

case的穿透性:如果没有写break会执行下一个语句 直到遇到break或者}为止

switch新特性

         int number=10;
         switch (number) {
            case 1-> System.out.println("一");

             case 2-> System.out.println("二");

             case 3-> System.out.println("三");

             default ->System.out.println("没有这个选项");

 for

while 

do...while

练习:判断一个数是不是回文数

Scanner sc=new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int num= sc.nextInt();
        int result=0;
        int temp=num;
        while(num!=0){
            int g =num%10;
            num/=10;
            result = result*10+g;
        }
        System.out.println(result);
        if(result==temp){
            System.out.println("true");

        }
        else{
            System.out.println("false");
        }

练习:

//求商和余数
//给定两个证书被除数和除数(都是正数,且不超过int)
//两个数相除不能使用乘法除法和%.得到商和余数
//        被除数/除数=商...余数
        Scanner sc=new Scanner(System.in);
        System.out.println("请输入被除数:");
        int num1=sc.nextInt();
        System.out.println("请输入除数:");
        int num2=sc.nextInt();
        int shang=0;
        while(num1>=num2){
            num1=num1-num2;
            shang++;
        }
        System.out.println("商为:"+shang);
        System.out.println("余数为:"+num1);
//逢七过
//每个人报数 报到包含7或者7的倍数要喊:过
//打印出1-100之间数字式7或者是7的倍数的数据
public class learn {
    public static void main(String[] args) {
            
            int i=0;
            for(i=1;i<=100;i++){
                if(i%7==0||i%10==7||i/10%10==7){
                    System.out.println("过");
                    continue;
                }
                System.out.println(i);
            }


    }
}
//键盘输入一个大于等于2的整数x 并返回x的平方根
//结果只保留整数部分,小数部分将被舍去
//10
//1*1=1
//2*2=4
//3*3=9<10
//4*4=16>10
//推断10的平方根在3-4之间
import java.util.Scanner;

public class learn {
    public static void main(String[] args) {
        
        Scanner sc= new Scanner(System.in);
        System.out.println("请输入一个整数:");
        int number = sc.nextInt();
        //从1开始循环判断
        for(int i=1;i<=number;i++){
            //i*i num
            if(i*i==number){
                System.out.println(i+"就是"+number+"的平方根");
                break;
            }
            else if(i*i>number){
                System.out.println((i-1)+"就是"+number+"的平方根");
                break;
            }
        }

    }
}
import java.util.Scanner;

public class learn {
    public static void main(String[] args) {
        //求质数
        //标记思想
        //简化思路:
        //81 1*18(质因子) 3*27 9*9
        //以81的平方根9为中心 且a*b==81 那么a与b中必定有一个是小于等于9的 另一个大于等于9
        boolean flag=true;
        Scanner sc= new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int number =sc.nextInt();
        if(number==1) {
            System.out.println("1不是质数");
        }
        for (int i=2;i
import java.util.Random;
import java.util.Scanner;

public class learn {
    public static void main(String[] args) {
        //猜数字 随机生成1-100的随机数字 你猜一下

        //扩展小要求
        //抽奖游戏 保底
        int count=0;
        //获取随机数
        //1.导包
        //2.创建对象
        Random r =new Random();
        //3.生成随机数
        //判断技巧 范围从0-这个数减一
        int number = r.nextInt(100)+1;
        //生成任意数到任意数之间的随机数 7-15
        //1.让这个范围头尾都减去一个值,这个范围从0开始 0-8
        //2.尾巴+1 8+1=9
        //3.最终的结果,加上第一个减去的值
        Scanner sc=new Scanner(System.in);

        while(true) {
            System.out.println("请输入你要猜的数字");
            int guess = sc.nextInt();
            count++;
            if(count==3){
                System.out.println("猜中");
                break;1
            }
            if(guess>number){
                System.out.println("猜大了");
            } else if(guess

模块四 -数组

数组初始化的两种方式:

静态初始化

数组名.fori->快速生成数组的方式

            //定义一个数组,存储1,2,3,4,5
        //遍历数组得到每一个元素 求数组里面所有元素的数据和
        //定义一个数组,并添加数据1,2,3,4,5
        int[] arr={1,2,3,4,5};
        int sum=0;
        for (int i = 0; i < arr.length; i++) {
            sum+=arr[i];
        }
        System.out.println(sum);

动态初始化

Java学习_第80张图片

 数组的内存图

模块五-方法

什么是方法?

方法(method)是程序中最小的执行单元  提高代码复用性和可重复性

方法定义和调用 跟自定义函数有点像

方法重载:

方法名一样且在一个类里面

 Java虚拟机会通过参数不同

你可能感兴趣的:(Java,学习,java)