对于JAVA的入门到精通学习笔记模块三

本文详细介绍了编程中的常量、变量概念,包括不同类型的常量和变量定义,以及IDEA工具的使用,涵盖了目录结构、Project和Module操作,以及运算符如算数运算、赋值运算、关系运算和逻辑运算,还介绍了三元运算符的应用实例。
摘要由CSDN通过智能技术生成
模块二的回顾:
    1.常量:在代码的运算过程中,值不会发生改变的数据
        a.整数常量:所有的整数
        b.小数常量:所有带小数点的  2.0
        c.字符常量:带单引号的,单引号中必须有且仅有一个内容
        d.字符串常量:带双引号的
        e.布尔常量:true false -> 可以当条件判断使用
        f.空常量:null  代表数据不存在,所以不能直接使用
    2.变量:在代码的运行过程中,会根据不同的情况而随时可以改变的数据
        a.定义:
            数据类型 变量名 = 值 ->将等号右边的值赋给等号左边的变量
        b.数据类型:
            基本类型:byte short int long float double boolean char
            引用类型:类  数组  接口  枚举  注解
    3.数据类型转换:等号左右两边类型不一致时,或者不同的类型做运算
        a.自动类型转换:小转大
            将取值范围小的类型赋值给取值范围大的类型
            取值范围小的类型和取值范围大的类型之间做运算
        b.强转:大转小
            取值范围小的数据类型 变量名 = (取值范围小的数据类型)取值范围大的数据类型;
​
模块三的重点:
    all

第一章.IDEA的使用

一.idea的介绍

1.概述:开发工具
2.特点:
    a.idea是java写的,所以本地上必须有正确的jdk环境(JAVA_HOME)
    b.idea自动保存
    c.不用我们打开dos命令窗口执行javac和java命令
    d.idea会自动管理我们写的代码
3.相关开发工具:eclipse myeclipse
4.作用:加速我们的开发

二.idea的目录结构

先创建project,在project下创建module,在module下创建package -> 必须记住

三.Project的操作

1.创建Project

2.再次创建一个新的Project

3.关闭Project

file -> close project

4.打开Project

点close project出现以下界面

这里展示的是我们用过的project,我们可以直接点击,就能打开对应的project

四.module的操作

1.创建module

方法1:

方法2:

2.关闭module

a.对着要关闭的module右键    ->  remove module   ->  此时是关闭,不是真正的删除module
b.再对着关闭的module右键    ->  delete  ->  从本地上真正删除

3.导入已有的module

如果导入的module的src是灰色的,需要改变一下目录的属性变成源目录

五.package的操作

1.创建

2.package的删除

右键  ->  delete

3.package取名字规范

1.公司域名倒着写:
    比如:尚硅谷  域名为:www.atguigu.com
    我们写代码创建包:com.atguigu

六.创建类以及基本语句生成快捷键

1.生成main方法:输入main(psvm) -> 回车

2.生成输出语句:sout -> 回车

3.将变量名放到输出语句中:

a. 变量名.sout

b. 变量名.soutv -> 带字符串拼接格式的输出方式 -> 输出格式好看

七.基本设置

1.设置字体

file    ->  settings

2.设置提示的快捷键

file	->	settings

快捷生成的提示设置:file -> settings -> keymap -> main menu -> code -> code completion -> basic

-> 右击 remove crtl+空格 -> 右击add keyboard shortcut -> alt+/

3.设置注释字体

file ->	settings ->	editor -> color scheme -> language defaults -> comments

八.快捷键

快捷键功能
Alt+Enter导入包,自动修正代码(重中之重)
Ctrl+Y删除光标所在行
Ctrl+D复制光标所在行的内容,插入光标位置下面
Ctrl+Alt+L格式化代码
Ctrl+/单行注释
Ctrl+Shift+/选中代码注释,多行注释,再按取消注释
Alt+Shift+上下箭头移动当前代码

先写等号右边的 10;

alt+enter回车自动生成定义

或者

10.var 回车自动生成定义

九.出现的问题

1.创建project时,要选择empty project
2.在运行代码时会出现"找不到对应的发行源"或者"不支持发行版本"或者"无效的发行源版本",证明本地jdk版本和idea中的language level不匹配
	所以要匹配版本
	file->project Structure->点击project->引入本地jdk->project level选择对应的版本
3.没有out路径的问题
	out路径是专门存放idea自动编译生成的.class文件的
	所以需要指明out路径
4.src是灰色的,对着src右键,选项中没有java class或者package

第二章.运算符

一.算数运算符

符号说明
+加法
-减法
*乘法
/除法 如果符号前后都是整数,结果取整数部分 如果符号前后有一个是小数,结果就是正常小数
%模,取余数部分
package com.atguigu.arithmetic;

public class Demo01_Arithmetic {
    public static void main(String[] args) {
        int i = 10;
        int j = 3;
        int add = i + j;//推荐使用
        System.out.println(add);//13
        System.out.println(i + j);//13

        int sub = i - j;
        System.out.println(sub);//7

        int mul = i * j;
        System.out.println(mul);//30

        int div = i / j;
        System.out.println(div);//3

        int mo = i % j;
        System.out.println(mo);//1
    }
}
+:
	1.运算
    2.字符串拼接:任何类型的数据遇到字符串都会变成字符串,此时+就不再是运算了,而是字符串拼接,将内容直接往后拼接
package com.atguigu.arithmetic;

public class Demo02_Arithmetic {
    public static void main(String[] args) {
        int i = 10;
        int j = 3;
        System.out.println(i+j+"");//字符串的13
        System.out.println(i+j+""+1);//字符串131
        System.out.println(i + "" + j);//字符串103
        System.out.println("i和j相加之和为:" + (i + j));//i和j相加之和为:13
    }
}

二.自增自减运算符(也算算术运算符的一种)

1.格式:
	变量++ -> 后自加
    ++变量 -> 前自加
    变量-- -> 后自减
    --变量 -> 前自减
        
    自增自减只变化1
2.使用:
	a.单独使用: ++ -- 单独为一句,没有和其他的语句掺和使用
        i++;

		符号在前在后都是先运算
            
    b.混合使用: ++ -- 和其他的语句掺和使用了(比如:输出语句,赋值语句)
		符号在前:先运算,再使用运算后的值
		符号在后:先使用赋值,使用完毕后,自身再运算
package com.atguigu.arithmetic;

public class Demo03_Arithmetic {
    public static void main(String[] args) {
        int i = 10;
        i++;//++i;
        System.out.println("i = " + i);//i = 11
        System.out.println("============================");

        int j = 100;
        int result01 = ++j;
        System.out.println("result01 = " + result01);//result01 = 101
        System.out.println(j);//101
        System.out.println("============================");

        int k = 100;
        int result02 = k++;
        System.out.println("result02 = " + result02);//result02 = 100
        System.out.println(k);//101
        System.out.println("============================");

        int z = 100;
        System.out.println(z++);//100
        System.out.println(z);//101
        System.out.println("============================");

        int x = 10;
        int y = 20;
        int result03 = x++ + --y + ++x;//10(x=11)+(y=19)19+(x=12)12
        System.out.println("result03 = " + result03);//result03 = 41
        System.out.println(x);//12
        System.out.println(y);//19
        System.out.println("============================");

        int c = 10;
        c = c++;//c=10(c=11)
        System.out.println(c);//10
        /*
            int c=10;
            int v1=c;       //10
            int v2=c+1;     //11
            c=v1;           //10
            System.out.println(c);//10
        */
    }
}

三.赋值运算符

1.基本赋值运算符:
	= -> 先看等号右边的,再将右边的数据赋值给等号左边的变量
2.复合赋值运算符:
	+=:
		int i = 10;
		i+=2 -> i=i+2
	-=:
	*=:
	/+:	取整数部分
	%=: 取余数部分
3.注意:byte short 通过复合赋值运算符,jvm会自动转型
package com.atguigu.assignment;

public class Demo01_Assignment {
    public static void main(String[] args) {
        int i = 10;
        i+=2;//i=i+2
        System.out.println(i);//12
    }
}
package com.atguigu.assignment;

public class Demo02_Assignment {
    public static void main(String[] args) {
        byte b = 10;
//        b = (byte) (b+1);
        b+=1;
        System.out.println(b);//11
    }
}

四.关系运算符(比较运算符)

1.结果:boolean型 -> 要么是true,要么是false
2.作用:做条件判断使用
符号说明
==如果符号前后相等为true,否则为false
>如果符号前的数据大于符号后的数据为true,否则为false
<如果符号前的数据小于符号后的数据为true,否则为false
>=如果符号前的数据大于等于符号后的数据为true,否则为false
<=如果符号前的数据小于等于符号后的数据为true,否则为false
!=如果符号前后不相等为true,否则为false
package com.atguigu.compare;

public class Demo01_Compare {
    public static void main(String[] args) {
        int i = 10;
        int j = 20;
        boolean result01 = i==j;
        System.out.println("result01 = " + result01);//false
        System.out.println(i>j);//false
        System.out.println(i<j);//true
        System.out.println(i>=j);//false
        System.out.println(i<=j);//true
        System.out.println(i!=j);//true
    }
}

五.逻辑运算符

1.作用:连接多个boolean结果的
2.结果:boolean型结果
符号说明
&&(与,并且)有假则假,符号前后有一个结果为false,整体就是false
||(或者)有真则真,符号前后有一个结果为true,整体就是true
!(非,取反)不是true就是false 不是false就是true
^(异或)符号前后结果一样为false,不一样为true true^true -> false true^false ->true false^true ->true false^false ->false
package com.atguigu.logic;

public class Demo01_Logic {
    public static void main(String[] args) {
        int i = 10;
        int j = 20;
        int k = 10;
        boolean result01 = (i>j) && (i==k);
        System.out.println("result01 = " + result01);//false
        boolean result02 = (i>j) || (i==k);
        System.out.println("result02 = " + result02);//true
        boolean result03 = !(i>j);
        System.out.println("result03 = " + result03);//true
        boolean result04 = (i>j) ^ (i==k);
        System.out.println("result04 = " + result04);//true
    }
}
符号说明
&1.单于,如果前后都是布尔型,有假则假,但是如果符号前为false,符号后的判断会继续执行 2.如果该符号前后都是数字,看做是位运算符
&&1.双于,有假则假,但是有短路效果,如果符号前为false,符号后的判断就不会执行了
|1.单或,如果前后都是布尔型,有真则真,但是如果符号前为true,符号后的判断会继续执行 2.如果该符号前后都是数字,看做是位运算符
||1.双或,有真则真,但是有短路效果,如果符号前为true,符号后的判断就不会执行了
package com.atguigu.logic;

public class Demo02_Logic {
 public static void main(String[] args) {
     /*
     int a = 10;
     int b = 20;
     boolean result01 = (++a>100) & (++b>10);
     System.out.println("result01 = " + result01);//false
     System.out.println(a);//11
     System.out.println(b);//21

     int x = 10;
     int y = 20;
     boolean result02 = (++x>100) && (++y>10);   //双于    有短路效果
     System.out.println("result02 = " + result02);//false
     System.out.println(x);//11
     System.out.println(y);//20
     */

     int a = 10;
     int b = 20;
     boolean result01 = (++a<100) | (++b>10);
     System.out.println("result01 = " + result01);//true
     System.out.println(a);//11
     System.out.println(b);//21

     int x = 10;
     int y = 20;
     boolean result02 = (++x<100) || (++y>10);   //true    有短路效果
     System.out.println("result02 = " + result02);//true
     System.out.println(x);//11
     System.out.println(y);//20
 }
}

问题:定义一个变量,随意给一个值,判断这个变量是否在1-100之间

1<=a<=100 -> 错误,这是数学写法

i>=1 && i<=100 -> java写法,用逻辑运算符拼接多个判断

六.三元运算符

1.格式
    boolean 表达式?表达式1:表达式2
2.执行流程
    先判断,如果是true,就走?后面的表达式1,否则就走:后面的表达式2

1.练习1

需求:小明考完试了,判断小明的分数是否及格,返回结果
package com.atguigu.ternary;

public class Demo01_Ternary {
    public static void main(String[] args) {
//        定义一个变量,表示小明的分数
        int score = 99;
        String result01 = score>=60?"及格":"不及格";
        System.out.println("result01 = " + result01);//及格
    }
}

2.练习2

有两个老人,年龄分别为70  80   求出两个老人的最高年龄
package com.atguigu.ternary;

public class Demo02_Ternary {
    public static void main(String[] args) {
//        定义两个变量,表示两个老人年龄
        int old1 = 70;
        int old2 = 80;
        int max = old1>old2?old1:old2;
        System.out.println("年龄最大的老人年龄为 " + max);//80
    }
}

3.练习3

有三个老人,年龄分别为70 80 60  求出三个老人的最高年龄
package com.atguigu.ternary;

public class Demo03_Ternary {
    public static void main(String[] args) {
//        定义三个变量,表示三个老人年龄
        int old1 = 70;
        int old2 = 80;
        int old3 = 60;
        int temp = old1>old2?old1:old2;
        int max = temp>old3?temp:old3;
        System.out.println("年龄最大的老人年龄为 " + max);//80
    }
}

  • 33
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值