零基础入门学习Java课堂笔记 ——day01
Java语法
1.注释、标识符、关键字
注释
不会被程序执行的代码或者块
//双斜杠表示单行注释
/*表示多行注释*/
标识符、关键字
关键词系统事先定义好的,我们能直接拿来用的,不能作为变量名使用
所有的标识符只能以字母、美元符号、下划线开始
首字母后可以以字母、美元符号、下划线或者数字组合
不能使用关键字作为标识符,标识符区分大小写
可以使用中文作为标识符(不推荐)
2.数据类型
Java是一门强类型语言:要求变量的使用严格符合规定,所有话能量要先定义后才能使用
Java两大数据类型
- 基本数据类型
- 引用数据类型
public class Demo{
public static void main(String[] args){
//基本数据类型的表示
int num1 = 10; //最常用的int
byte num2 = 20; //字节类型
short num3 = 30; //短整数类型
long num4 = 60L; //长整数类型 末尾L表示
float num5 = 50.1F //浮点数float后面+f
double num6 = 3.1415926535//浮点数类型
char word = 'H' //char类型表示一个字符 一个!
boolean t = true; //true or flase
}
}
3.基本类型拓展
public class demo{
public static void main(String[] args){
//整数
int i_10 = 10; //表示十进制数的10
int i_8 = 010; //表示八进制数的10
int i_16 = 0x10 //表示是十六进制数的10
//字符 字符本质还是数字 (int)可以强制转换为其对应的数字,其数字是对于的ASCLL码
char a = 'n';
char b = '你';
System.out.println(a);
System.out.println((int)a);
System.out.println(b);
System.out.println((int)b);
//布尔值
boolean flag = true;
if(flag){} = if(flag == true){}
}
}
4.类型转换
在Java运算中,不同类型的数据要先转化为同一数据类型,然后就行运算
原则上转换规则如下:
- 强制类型转换(高到低)
- 自动类型转换(低到高)
public class demo{
public static void main(String[] args){
int i = 128;
byte b = (int)i; //强制类型转换 内存溢出
System.out.println(b); //-1
}
}
注意点
1.不能对boolean类型转换
2.不能把对象类型转换为不相干的类型
3.转换会造成精度损失
拓展:数字之间可以用下划线分割
int money = 100_0000_0000;
5.变量
数据类型 变量名 = 值;
type varName [=value] [{,varName[=value]}];
变量作用域
类变量
被static修饰 可以在其他方法内部直接使用
实例变量
与类绑定,调用前必须先new类的对象
局部变量
在方法内部定义,仅限于方法内部使用
public class Demo{
//类变量 static
static double salary = 2500.0;
//属性:实例变量 不初始化会编程默认值
//所有数值都是0或0.0 bool默认是false
//除了基本类型都是NULL
int i = 10;
public static void main(String[] args){
System.out.println(salary);
int i = 10; //属性:局部变量
}
//其他方法
public void other(){
Demo d = new Demo();//使用实例对象
System.out.println(d.i);
}
}
常量
一旦被定义就不能被改变的称之为常量,常量必须初始化!
final PI = 3.1415926; //常量一般使用大写字母表示
6.基本运算符 operator
public class demo{
public static void main(String[] args){
int a = 10; //赋值运算符
int b = 20;
System.out.println(a+b); //30
System.out.println(a-b); //-10
System.out.println(a*b); //200
System.out.println(a/(double)b); //0.5
System.out.println(a%b); //0
System.out.println(a<b); //true
System.out.println(a>b); //false
System.out.println(a==b); //false
System.out.println(a!=b); //true
int c = a++;
int d = ++a;
System.out.println(c); //10
System.out.println(d); //12
System.out.println(a); //12
//拓展:幂运算
double pow = Math.pow(2,3)//2*2*2;
System.out.println(pow); //8
}
}
如果运算过程中有long类型的话那么结果都为long反之所有结果都为int
(cast 转换)
逻辑运算符
与(and) &&
两个运算符都为真时返回真 【运算符相乘】
或(or) ||
两个运算符其中一个为真返回真【运算符相加】
非(nor) !
单个运算符取相反的结果【运算符取反】
public class demo{
public static void main(String[] args){
int a = true;
int b = false;
System.out.println(a&&b);//false
System.out.println(a||b);//true
System.out.println(!a);//false
}
}
短路运算
与运算时如果第一个操作数为假那么直接返回假 不会计算第二操作数
或运算时如果第一个操作数为真那么直接返回真 不会计算第二操作数
public class demo{
public static void main(String[] args){
int c = 5;
boolean d = (c<4)&&(c++<4);
System.out.println(d);//false
System.out.println(c);//5
boolean d = (c>4)||(c++<4);
System.out.println(d);//true
System.out.println(c);//5
}
}
位运算
&:位相乘结果
|:位相加结果
^:位是否相同 相同得1 反之得0
~:是1得0 是0得1
<<、>>:左移、右移运算符
public class demo{
public static void main(String[] args){
/*
0000 0000 0
0000 0001 2 2<<0
0000 0010 4 2<<1
0000 0100 8 2<<2
0000 1000 16 2<<3
*/
System.out.println(2<<0);//0
System.out.println(2<<3);
}
}
效率高!!!!
条件运算符
x ? y : z
如果x为真返回y反之返回z
public class demo{
public static void main(String[] args){
int y = 10;
int z = 20;
int x = (y==10)?y:z;
System.out.println(x); //10
}
}
运算符优先级
7.包机制
类===>文件
包===>文件夹
一般包以公司域名导致规则
例如:www.baidu.com 倒置后 com.baidu.www
在IDEA创建包时可以输入com.baidu.www会自动创建各个层级包
在Java代码中可以使用package来关联包名
package com.baidu.www; //导入本类包
import java.util.Data; //导入外类包
package必须在import上面
8. Java Doc
/**
* @Description 这是文档注释
* @Author StarVik
*/
在控制台编译Doc注释信息为一个文档
javadoc -encoding UTF-8 charset UTF-8 demo.java
课程来源:B站 遇见狂神说
零基础入门学习Java课堂笔记 ——day01的更多相关文章
- 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案
国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...
- 学习《零基础入门学习Python》电子书PDF+笔记+课后题及答案
初学python入门建议学习<零基础入门学习Python>.适合新手入门,很简单很易懂.前一半将语法,后一半讲了实际的应用. Python3入门必备,小甲鱼手把手教授Python,包含电子 ...
- 《零基础入门学习Python》【第一版】视频课后答案第001讲
测试题答案: 0. Python 是什么类型的语言? Python是脚本语言 脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序.以简单的方 ...
- 零基础入门学习Python(1)--我和Python的第一次亲密接触
前言 最近在学习Python编程语言,于是乎就在网上找资源.其中小甲鱼<零基础入门学习Python>试听了几节课,感觉还挺不错,里面的视频都是免费下载,小甲鱼讲话也挺幽默风趣的,所以呢,就 ...
- 093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 02 static关键字 03 static关键字(下)
093 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 03 # 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 ...
- 088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现
088 01 Android 零基础入门 02 Java面向对象 02 Java封装 01 封装的实现 02 封装的代码实现 本文知识点:Java封装的代码实现 说明:因为时间紧张,本人写博客过程中只 ...
- 080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则
080 01 Android 零基础入门 02 Java面向对象 01 Java面向对象基础 01 初识面向对象 05 单一职责原则 本文知识点:单一职责原则 说明:因为时间紧张,本人写博客过程中只是 ...
- 057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和
057 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 04 案例:求整型数组的数组元素的元素值累加和 本文知识点:求整型数组的数组元素的元素值累加和 案例:求整型数 ...
- 056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用
056 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 03 一维数组的应用 本文知识点:数组的实际应用 程序开发中如何应用数组? 程序代码及其运行结果: 不同数据类 ...
- 055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念
055 01 Android 零基础入门 01 Java基础语法 06 Java一维数组 02 数组的概念 本文知识点:数组的概念 数组的声明创建.初始化 在学习数组的声明创建.初始化前,我们可以和之 ...
随机推荐
- 8 Englishi 词根
测一测 physical obesity skinny sliny stout skeleton external appearance recede unprecededented feinge e ...
- JVM简单概述
一.内存模型&分区 Java虚拟机在运行Java程序时,会管理着一块内存区域:运行时数据区 在运行时数据区里,会根据用途进行划分为以下模块: 1.Java虚拟机栈 2.本地方法栈 3.Java ...
- 30 秒使用 Sealos 搭建个人密码管理器 Vaultwarden
我与 LastPass 的曲折恋情 超过 8 年网龄的我,注册过很多网站帐号,每个网站的密码我都用不同的复杂密码.一开始我全靠脑力记忆这些密码,后来渐渐觉得记起来很困难,就记录在笔记本上.但是随着时间 ...
- idea安装并使用maven依赖分析插件:Maven Helper
本文为博主原创,转载请注明出处: 在maven工程中,经常会查看maven的依赖树,在没使用该插件时,需要maven dependency:tree命令进行查看依赖树, 通过maven helper ...
- VSCode + GCC编译器(MinGW)开发环境中文字符乱码问题踩坑与解决办法
.markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...
- 百度网盘(百度云)SVIP超级会员共享账号每日更新(2023.12.27)
一.百度网盘SVIP超级会员共享账号 可能很多人不懂这个共享账号是什么意思,小编在这里给大家做一下解答. 我们多知道百度网盘很大的用处就是类似U盘,不同的人把文件上传到百度网盘,别人可以直接下载,避免 ...
- [转帖]Linux之/etc/fstab文件讲解
https://www.cnblogs.com/FengGeBlog/p/10178824.html /etc/fstab是用来存放文件系统的静态信息的文件.位于/etc/目录下,可以用命令less ...
- [转帖]harbor-db restarting问题
现象: 在安装harbor后,启动时发现harbor-db 一直是restarting,/harbor-jobservice,/harbor-core 这两是starting 状态,如下图 解决: 1 ...
- [转帖]看看 Jmeter 是如何玩转 redis 数据库的
柠檬小欧 2021-08-31 20:06420 Jmeter 作为当前非常受欢迎的接口测试和性能测试的工具,在企业中得到非常广泛的使用,而 Redis 作为缓存数据库,也在企业中得到普遍使用,那如何 ...
- [转帖]Linux下的I/O复用与epoll详解
https://blog.csdn.net/weixin_39094034/article/details/110393127 前言 I/O多路复用有很多种实现.在linux上,2.4内核前主要是se ...