JAVA基础

1、数据类型及转换

1.1 注释

注释是在程序指定位置添加的说明性信息

简单理解:对代码的一种解释说明,方便我们程序员更好的去阅读代码

// 单行注释
/*
多行注释
*/
/**文档注释*/

1.2 强制转换

强制转换:把一个表示数据范围大的数值或者变量赋值给另一个表示数据范围小的变量

简单理解:大的给小的,不能直接给,需要强转

格式:目标数据类型 变量名 = (目标数据类型)值或者变量;

范例:

ink k = (int)88.88;

注意:强制类型转换,有可能会发生精度损失

精度损失:简单理解,将容积为8升的容器中的水,倒入容积为4升的容器中,如果水超出了4升,就洒了。

1.3 常量

常量:在程序的执行过程中,其值不会发生改变的量(数据)

常量的分类:

字符串常量:被双引号所包裹的内容

整数常量:所有整数

小数常量:所有小数

字符常量:被单引号包裹的内容,里面只能存放单个字符

布尔常量:只有两值,true(真),false(假)

布尔常量单独打印没有意义,为了后面要学习的运算符,打基础

空变量:null,数组部分详细讲解

注意:null空常量不能输出打印

1.4 类型转换

案例:判断是否正确

public class Test{
public static void main(String[] args){
byte a = 3; //1
byte b = 4; //2
/*
隐藏转换:当小的数据类型和大的数据类型在一起运算的时候,小的会先提示为打的之后,再进行运算
特殊关注:byte short char在运算的时候,都会直接提升为int,然后再进行运算。
解决方法:byte c = (byte)(a + b)
*/
byte c = a + b; //3 错误:不兼容的类型:从int转换到byte可能会有损失
byte d = 3 + 4; //4 这里的3和4是两个变量,Java存在常量优化机制,会在编译的时候就会让3和4进行相加,然后会自动判断7是否在byte的取值范围内。1、在范围内:编译出错 2、在范围内:通过编译
}
}

1.5 变量

以上两块内存空间,所记录的值,是经常发生改变的,对于这种经常发生改变的数据,就是所谓的变量。

结论:变量就是内存中的存储空间,空间中存储着经常发生改变的量(数据)

怎么定义变量

~变量的定义格式

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

数据类型:为空间中存储的数据,加入类型【限制】整数?小数?...

变量名:自己要为空间起的名字,没有难度

数据值:空间中要存储的数值,没有难度

1.6 数据类型

计算机存储单元

1B(字节)= 8bit

1KB = 1024B

1MB = 1024KB

1GB = 1024MB

TB PB等......

数据类型

Java语言是强类型语言,对于每一种数据都给出了明确的数据类型,不同的数据类型也分配了不同的内存空间,所以它们表示的数据大小也是不一样的。

数据类型内存占用和取值范围

常量【没有手动指定数据类型】但只要是数据,就会存在数据类型

public static void main(String[] args){
//整数类型,默认为int
System.out.println(10);
//浮点类型(小数类型),默认为double
System.out.println(12.3);
}

1.7 变量的定义和试用

变量的定义格式

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

变量的使用

根据标识,变量名进行使用

public class Demo{
public static void main(String[] args){
int a = 10;
System.out.println(a);
a = 30;
System.out.println(a);
}
}

总结:变量就是内存中的空间,内部存储着不断发生变化的数据

1.8 变量的注意事项

变量名不允许重复定义

public static void main(String[] args){
int a = 10;
//int a = 20; 错误代码
a = 20;
System.out.println(a);
}

一条语句可以定义多个变量,但需要使用逗号进行分割

public static void main(String[] args){
int a = 10 , b = 20 , c = 30;
System.out.println(a);
System.out.println(b);
System.out.println(c);
}

变量在使用之前一定要进行赋值

public static void main(String[] args){
//int a; 错误代码
int a = 10;
System.out.println(a);
}

定义float和long变量的注意事项

定义float类型变量的时候:需要在数值后面加入F的标识,F可以大写也可以小写

定义long类型变量的时候:需要在数值后面加入L的标识,L可以大写也可以小写

但是,建议大写 1L 1l(小写)

public static void main(String[] args){
float a = 12.3F;
long b = 1000L;
}

变量的作用域范围

变量的作用域:只在它所在的大括号中有效、

public static void main(String[] args){
int a = 12;
{
int b = 20; //无效 运行完就消失
System.out.println(a);
}

1.9 键盘录入

键盘录入介绍

为什么要有键盘录入?

目的:为了让我们操作的数据,变得更加灵活

举例:int a = 10;

这里a虽然是个变量,但记录得值,却是手动写死的。能不能让a变量记录的值,灵活起来,用户输入什么,a变量就记录什么。

实现键盘录入

步骤1:导包,需要写在class的上面

		import java.util.Scanner

步骤2:创建对象

		Scanner sc = new Scanner(System.in);
只有sc可以改变,其他属于固定格式

步骤3:使用变量接收数据

		int i = sc.nextInt();
只有i变量可以改变,其他属于固定格式

1.10 标识符

标识符概述

标识符:就是给类,方法,变量等起名字的符号。

标识符定义规则:

由数字、字母、下划线(_)和美元(S)组成

·不能以数字开头

·不能是关键字

·区分大小写

常见命名约定

小驼峰命名法:

约定1:标识符是一个单词的时候,首字母小写 eg:name

约定2:标识符由多个单词组成的时候,第一个单词首字母小写,其他单词首字母大写 eg:firstName

大驼峰命名法:

约定1:标识符是一个单词的时候,首字母大写 eg:Student

约定2:标识符由多个单词组成的时候,每个单词的首字母大写 eg:GoodStudent

1.11 隐式转换

类型转换

为什么要学习类型转换

public class Test{
public static void main(String[] args){
int a = 10;
double b = 12.3;
数据类型 c = a + b;
}
}

类型转换的分类

隐式转换

强制转换

隐式转换的过程

隐式转换

将数据类型中,取值范围小的数据,给取值范围大的类型赋值,可以直接赋值

范例:
int a = 10;
double b = a;

简单记:小的给大的,可以直接给。

int 4个字节

double 8个字节

4升的油,倒入8升的桶,可以直接倒入

隐式转换的细节

特殊关注:

byte short char 三种数据在运算的时候,不管是否有更高的数据类型,都会提升为int,然后再进行运算

Java基础1-1-1—java基础语法(数据类型及转换)的更多相关文章

  1. java和python中的string和int数据类型的转换

    未经允许,禁止转载!!! 在平时写代码的时候经常会用到string和int数据类型的转换 由于java和python在string和int数据类型转换的时候是不一样的 下面总结了java和python ...

  2. java基础(环境设置,基础语法,函数数组)

    框架图 环境搭建 课程中常见dos命令: dir : 列出当前目录下的文件以及文件夹 md : 创建目录 rd : 删除目录 cd : 进入指定目录 cd.. : 退回到上一级目录 cd/ : 退回到 ...

  3. java面向对象编程——第二章 java基础语法

    第二章 java基础语法 1. java关键字 abstract boolean break byte case catch char class const continue default do ...

  4. Java10-java语法基础(九)——java的封装性

    Java10-java语法基础(九)——java的封装性 一.Java的三大特性:封装.多态.继承 封装:通过类封装对象的数据成员和成员方法,保证只有可信的类或者对象能够访问这些方法和数据成员,对不可 ...

  5. Java09-java语法基础(八)java中的方法

    Java09-java语法基础(八)java中的方法 一.方法(函数/过程):是一个程序块,可以完成某种功能 1.java中方法的定义格式 [访问控制修饰符]  返回值类型  方法名(参数列表){ 方 ...

  6. 《Java程序设计》第三章-基础语法

    20145221<Java程序设计>第三章-基础语法 总结 教材学习内容总结 类型.变量与运算符 类型 Java可区分为基本类型(Primitive Type)和类类型(Class Typ ...

  7. JavaSE基础(三)--Java基础语法

    Java 基础语法 一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作.下面简要介绍下类.对象.方法和实例变量的概念. 对象:对象是类的一个实例,有状态和行为.例如 ...

  8. 008 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 02 Java 中的关键字

    008 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 02 Java 中的关键字 关键字 关键字就是一些有特殊意义的词 之前学习的程序中涉及到的关键字 Java中 ...

  9. 007 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 01 Java标识符

    007 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 01 Java标识符 Java变量与常量主要内容 Java变量与常量主要内容如下,主要是对以下内容的学习,没 ...

  10. JavaSE 基础知识(常识概念 + 基础语法)问答总结/面试题 —— 讲给应届生的 Java 开源知识项目

    写在最前面 这个项目是从20年末就立好的 flag,经过几年的学习,回过头再去看很多知识点又有新的理解.所以趁着找实习的准备,结合以前的学习储备,创建一个主要针对应届生和初学者的 Java 开源知识项 ...

随机推荐

  1. k8s挂在问题

    今天在重启pod这个后发现一直处于 然后去describe发现报错如下 先去手动mount的发现挂在不了 然后去slave节点发现这个没有安装 然后手动去安装后重启pod问题解决

  2. Mysql入门练习题

    1.在students表中,查询年龄大于25岁,且为男性的同学的名字和年龄 mysql> select name,age from students where age>25 and ge ...

  3. 夯实Java基础,一篇文章全解析线程问题

    1. 线程是什么 操作系统支持多个应用程序并发执行,每个应用程序至少对应一个进程 ,彼此之间的操作和数据不受干扰,彼此通信一般采用管道通信.消息队列.共享内存等方式.当一个进程需要磁盘IO的时候,CP ...

  4. 所有selenium相关的库

    通过爬虫 获取 官方文档库 如果想获取 相应的库 修改对应配置即可 代码如下 from urllib.parse import urljoin import requests from lxml im ...

  5. 👍SpringSecurity单体项目最佳实践

    SpringSecurity单体项目最佳实践 到这里,我们的SpringSecurity就已经完结啦,文章中可能有些地方不能做到全面覆盖,视频教程地址 初始项目地址 完成项目地址 1.搭建环境 建议下 ...

  6. NC-日志配置及代码详解

    目录 一.日志文件输出说明 二.日志配置说明 2.1 配置文件路径 2.2 配置格式 2.2.1 参数说明 三.代码说明 四.自定义日志实例 实例1-新建日志类 实例2-直接在代码中使用日志输出 五. ...

  7. 钉钉dingtalk=6.3.5版本RCE复现

    看到网上公开了钉钉RCE的利用方式,第一时间来复现一下. 钉钉dingtalk=6.3.5版本RCE复现 免责声明: 影响版本: 漏洞POC: 漏洞复现: 存在漏洞版本下载地址: 免责声明: 本文章仅 ...

  8. QQ登录

    public function login(){ $urlencode = urlencode("http://www.zhangxuhui.com/index/Index/callback ...

  9. halcon如何识别硬币?

    halcon如何识别硬币? 前言 最近一直在学习halcon,在此做了一个案例,分享给大家,效果图如下: 1.思路分析 通过观察,发现1元,5角,1角,它们在面值的文字描述不一样,硬币显示的花纹不一样 ...

  10. HDLBits答案——Circuits

    1 Combinational Logic 1.1 Basic Gates 1.1.1 Exams/m2014 q4h module top_module ( input in, output out ...