Java笔记二

news/2024/7/5 3:27:01

学习资源来自哔哩哔哩——遇见狂神说——狂神说Java

目录

数据类型:

字符

字符串

布尔值

 强制转换:

变量 

 常量:

运算符:


数据类型:

long定义的必须在数字后面+L

float定义的要在数字后面加F

long num1=30L;
float num2=50.1F;

字符

char name='a';

字符串

string name=“abc”

布尔值

boolean flag=true;

boolean flag=false

 强制转换:

public class Hello {
    public static void main(String[] args) {
        int i=127;
        byte b=(byte)i;//强制转换 (类型)+变量名 高到低
        //自动转换 低到高
        System.out.println(i);
        System.out.println(b);

    }
}

 注意:不能对布尔值进行转换

 在把高容量转换到低容量的时候强制转换

转换的时候可能存在内存溢出,或者精度问题

 溢出问题,错误示范:

public class Hello {
    public static void main(String[] args) {
        //操作比较大的数的时候注意溢出问题
        int money=10_0000_0000;
        int years=20;
        int total=money*years;//-1474836480,计算的时候溢出了
        long total2=money*years;//默认是int,转换之前已经存在问题了
        System.out.println(total);

    }
}

 

 

 正确示范:

public class Hello {
    public static void main(String[] args) {
        //操作比较大的数的时候注意溢出问题
        int money=10_0000_0000;
        int years=20;
        int total=money*years;//-1474836480,计算的时候溢出了
        long total2=money*years;//默认是int,转换之前已经存在问题了
        long total3=money*((long)years);//先把需要转换的进行转换
        System.out.println(total3);

    }
}

变量 

由低到高: byte,short,char,int,long,float,double

public class day2 {
    //类变量 static
    static  double salary=2500;
    //实例变量:从属于对象;如果不自行初始化,这个类型的默认值 0 0.0
    //布尔值:默认是false
    //除了基本类型其余默认值都是null
    String name;
    int age;
    public static void main(String[] args) {
        //局部变量:必须声明和初始化值
        int i=10;
        System.out.println(i);
        day2 day2=new day2();
        System.out.println(day2.age);
        System.out.println(day2.name);
        System.out.println(salary);
    }
}

 

 

 常量:

public class day2 {
    //修饰符,不存在先后顺序
    static final double PI=3.14;
    public static void main(String[] args) {
        System.out.println(PI);
    }
}

 

 

 

 

final:常量

static:类变量

 ◆类成员变量:首字母小写和驼峰原则: monthSalary

◆局部变量:首字母小写和驼峰原则

◆常量:大写字母和下划线: MAX VALUE

◆类名:首字母大写和驼峰原则: Man, GoodMan

◆ 方法名:首字母小写和驼峰原则: run(), runRun()

驼峰原则:除了第一个字母小写后面的字母首字母都大写

IDEA:ctrl+D:复制当前行到下一行

运算符:

&&:与 ||:或 |:非

 

public class day2 {
    public static void main(String[] args) {
        boolean a=true;
        boolean b=false;
        System.out.println("a&&b:"+(a&&b));
        System.out.println("a||b:"+(a||b));
        System.out.println("!(a&&b):"+!(a&&b));
        //注意短路运算
        int c=5;
        boolean d=(c<4)&&(c++<4);
        System.out.println(d);
        System.out.println(c);
    }
}

 

 

所谓短路运算如图所示,就是在c<4直接false后会直接得出结果,所以不会计算c++,所以最后c的值还是5

位运算符:&,|,^,~,>>,<<,>>>

     /*
        A=0011 1100
        B=0000 1101
        A&B=0000 1100 与
        A|B=0011 1101 或
        A^B=0011 0001 异非
        ~B=1111 0010 取反
         */

与:上面与下面如果都是1则为1,否则为0

或:上面与下面如果都是0则为0,否则为1

异或:上面与下面如果相同则为0,否则为1

<<左移 *2 <<右移 /2

位运算优点:效率高

字符串连接符+ 使用时的区别

 

 

条件运算符

? :

x?y:z

如果x==true,则结果为y,否则结果为z

public class day2 {
    public static void main(String[] args) {
        int score=50;
        String type=score<60?"不及格":"及格";
        System.out.println(type);
    }
}

 

 


http://lihuaxi.xjx100.cn/news/1559434.html

相关文章

牛客: BM17 二分查找-I

牛客: BM17 二分查找-I 文章目录 牛客: BM17 二分查找-I题目描述题解思路题解代码 题目描述 题解思路 一个左端点, 一个右端点, 循环直到左右端点交叉, 取左右端点的中点 若中点的值大于目标值, 意味着目标值只可能在中点的左边, 所以右端点变为中点的前一个位置 若中点的值…

leetcode 94.二叉树的中序遍历(非递归和递归遍历)

94. 二叉树的中序遍历 - 力扣&#xff08;LeetCode&#xff09; 代码随想录 (programmercarl.com) /*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode() : val(0), left(nullptr), righ…

974. 和可被 K 整除的子数组

974. 和可被 K 整除的子数组 C代码&#xff1a;哈希表前缀和 typedef struct{int val;int cnt;UT_hash_handle hh; } HashTable;int subarraysDivByK(int* nums, int numsSize, int k){HashTable* head NULL;HashTable* out NULL;int sum 0;int cnt 0;out (HashTable*)ma…

卡尔曼滤波(Kalman Filter)C#测试

一、操作过程 刚学了一下卡尔曼滤波&#xff0c;具体原理还没细看&#xff0c;大致过程如下 分为两步&#xff0c;第一步Predict&#xff0c;以下两个公式 第二步Correct&#xff0c;以下三个公式 公式看起来很复杂&#xff0c;其中是我们要处理的数据&#xff0c; 是滤…

正则表达式新解

文章目录 是什么&#xff1f;正则用法匹配单个字符匹配一组字符其他元字符核心函数 贪婪匹配和非贪婪匹配正则练习 是什么&#xff1f; 正则表达式(Regular Expression)是一种文本模式&#xff0c;包括普通字符&#xff08;例如&#xff0c;a 到 z 之间的字母&#xff09;和特殊…

离散数学之 一阶逻辑等值演算与推理

一阶逻辑等值式与置换规则 基本等值式 这里用到了量词辖域的收缩 未完待续

从电大搜题到上海开放大学,广播电视大学引领学习新风尚

近年来&#xff0c;随着信息技术的飞速发展&#xff0c;互联网的普及和应用成为了我们生活中不可或缺的一部分。而在大学学习领域&#xff0c;电大搜题微信公众号应运而生&#xff0c;为广大学子提供了便捷的学习资源和交流平台。在这个信息高速发展的时代&#xff0c;上海开放…

滚雪球学Java(19):Java中的内存机制

&#x1f3c6;本文收录于「滚雪球学Java」专栏&#xff0c;专业攻坚指数级提升&#xff0c;助你一臂之力&#xff0c;带你早日登顶&#x1f680;&#xff0c;欢迎大家关注&&收藏&#xff01;持续更新中&#xff0c;up&#xff01;up&#xff01;up&#xff01;&#xf…