1.程序的本质实际上就是在于数据的处理上。

  JAVA中的数据类型有两类

    基本数据类型:是进行内容的操作而不是内存的操作

    数值型:
      整型:byte(-128 ~ 127),short(-32768 ~ 32767),int(-2147482648 ~ 2147482647),long(-9223372036854775808 ~ 9223372036854775807)  默认值:0
      浮点型:flost(-3.4E38 ~ 3.4E38),double(-1.7E308 ~ 1.7E308)  默认值:0.0
      字符型:char  默认值:‘\u000’
      布尔型:boolean  默认值:false),true

    引用数据类型:在数据交互过程中会占用内存空间指向

    分为:数组,类,接口;默认值:null
 
 System.out.println(Integer.toBinaryString(a)); //二进制转换
System.out.println(Integer.toOctalString(a)); //八进制转换
System.out.println(Integer.toHexString(a)); //十六进制转换
BigDecimel 大小数
BigIwteger 大整数
 
 long a7 = 11123213232L;
long l = 3;
long l2 = l+3; //L问题
  使用环境

    表示整数首先考虑的就是int,

    表示小数玩使用double

    表示日期时间数字,文件,内存大小使用long(单位:字节);

    进行编码转换,数据传输使用byte类型;

    处理中文使用char类型;

    处理逻辑使用boolean类型;

2.0整型

  在JAVA中有一个特点:默认的一个整数,其对应的类型永恒是int。

 //定义变量的语法:数据类型 变量名称=默认值:int num=10; 定义一个num变量,其内容为10;

  变量的内容在开发中是允许修改的,常量是不行的

int a=lnteger.MAX_VALUE;//int的最大值

         .MIN_VALUE;//int的最小值

  +1后会出现数据溢出的问题

  之所以会出现数据溢出操作,那么本质的问题是在于数据类型的操作位数太短了,那么在这种情况下(正常代码基本不会出现),所以想要解决此时溢出的问题,那么就必须扩展操作类型,

问题!怎么从int变量或者是常量变成了更大的量呢?

  将int变量转为long:(long)int变量;或者是常量后面加个L。如果小范围的数据类型变量或者是常量与大范围的变量或常量计算时,先转换到大范围数据类型。

   在JAVA中,由于byte类型比较特殊,那么进行赋值处理时,如果设置的整型数据(局限于常量)在byte范围内那么它会帮助用户自动转型,如果超过了byte的范围,那么则需要进行向下的强制转换

  浮点型

    JAVA中小数默认:double

    任何的数据类型与double类型进行数学计算时都会自动转换为double类型。

    默认值现在在方法面前没有用处

    整型常量计算除法出来的小数不保留,

    最好避免比较中使用浮点数

//double d = 3.14; //浮点数常量默认类型是double。
//float f = 6.28F;
double d2 = 314e-2; //采用科学计数法的写法
System.out.println(d2); float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d); //false

  字符型

    char主要保存单个字符,并且单个字符要用 ’ 声明

    以后只要是使用了单引号声明的内容都表示单个字符

    char可以保存中文

    char 是在0~65535范围运算时直接当作整数来运算。(ASCII 表)

 

  常用字符范围

    大写字母:‘A’(65)~‘Z’(90);

    小写字母:‘a’(97)~‘z’(122);

    数字字母:‘0’(48)~‘9’(57);

  大写字母和小写字母的编码之间差了32个内容;(保存的是编码)
 
 

  布尔型

      boolean 表示的是布尔型数据类型,所谓的布尔类型就是有两个的内容概念,true(真),false(假);一般情况下boolean类型往往都是要结合判断语句完成处理

      0 是false 其他或者是1 是true

  字符串:String

    利用char只能够保存单个字符,这很大程度上是有限制的,所以如果想要表示多个字符,就可以利用String完成。Strong是个类,这个类的使用较为特殊,可以像基本数据类型,那样完成。在程序中使用双引号声明的数据,就是字符串。

/*
//字符串相连:加号两边只要有一个为字符串,则变为字符串连接符,整个结果为字符串。
System.out.println(4+"5");
*/
public class Test{
public static boid main(String args[]){
int x = 10;
double y = 20.3;
// 所有的数据类型与String进行 + 操作中都会自动变为String类型
// 字符串 + double 变为字符串 + int 变为字符串
String str1 = '计算结果:' + y + x; // 计算结果:20.310
String str2 = '计算结果:' + (y + x); // 计算结果:30.3
System.out.println(str1);
System.out.println(str2);
}
}

  例外一点,在程序中还存在有转义字符,包括:“\n”,“\\”,“\‘’”,“\‘”,“\t”……

Java常量的声明和使用

    常量就是从程序开始运行到结束都不变的量。在 Java 程序设计中,使用关键字“final”来声明一个常量,例如下面的程序代码。
///这里的 x 是一个常量,但是是在某个方法内的常量,也可以称为成员常量(作者给它取的名字)
public class var{
public static void main(String args[]){
var m=new var();
final int X=20;
System.out.println("常量 X=" + X);
  }
}
// 结果: 常量X = 20
  如果要声明一个类常量,就需要使用关键字“static”和“final”的组合,例如下面的例子。
///这里的 x 是类常量,所以无论是哪个对象的引用,它的值终究不变
public class var{
static final int X = 20;
public static void main(String args[]){
System.out.println(" 打印数据 X="+X);
}
}
/*结果是:
打印数据 X=20
*/
  从上面的例子可以看出,如果这个常量是类常量,那么无需再构造对象,可以直接引用这个常量。前一个例子声明的常量是一般常量,不是类常量,所以一定要构造对象,通过对象来引用这个常量,所以切记类常量和一般常量的区别所在。
 

  表示年龄使用int,表示成绩使用double,表示姓名使用String,表示逻辑使用boolesn。

(如有错误一定改!)

菜鸡的Java笔记第二 - java 数据类型的更多相关文章

  1. 转 Java笔记:Java内存模型

    Java笔记:Java内存模型 2014.04.09 | Comments 1. 基本概念 <深入理解Java内存模型>详细讲解了java的内存模型,这里对其中的一些基本概念做个简单的笔记 ...

  2. 菜鸡的Java笔记 第二十八 - java 包的定义

    包的主要作用以及定义    包的导入操作    系统常见的开发包    jar 程序命令        包的定义        在任何的操作系统之中都有一个统一的共识:同一个目录下不能够存在有相同的文 ...

  3. 菜鸡的Java笔记 简单JAVA 类的开发原则以及具体实现

    /*  现在要求定义一个雇员信息类 在这个类之中包含有雇员编号 姓名 职位 基本工资 佣金等信息    对于此时给定要求实际上就是描述一类事物,而这样的程序类在在java之中可以将其称为简单java类 ...

  4. java 笔记(4) —— java I/O 流、字节流、字符流

    Java中使用流来处理程序的输入和输出操作,流是一个抽象的概念,封装了程序数据于输入输出设备交换的底层细节.JavaIO中又将流分为字节流和字符流,字节流主要用于处理诸如图像,音频视频等二进制格式数据 ...

  5. Java笔记:Java集合概述和Set集合

    本文主要是Java集合的概述和Set集合 1.Java集合概述 1)数组可以保存多个对象,但数组长度不可变,一旦在初始化数组时指定了数组长度,这个数组长度就是不可变的,如果需要保存数量变化的数据,数组 ...

  6. Mysql技术内幕-笔记-第二章 数据类型

    第二章 数据类型 Mysql中尽量不要使用UNSIGNED,因为可能会带来一些意想不到的效果 SHOW CREATE TABLE tablename\G;查看表的创建语句 ZEROFILL会将宽度小于 ...

  7. Java笔记:Java 流(Stream)、文件(File)和IO

    更新时间:2018-1-7 12:27:21 更多请查看在线文集:http://android.52fhy.com/java/index.html java.io 包几乎包含了所有操作输入.输出需要的 ...

  8. 菜鸡的Java笔记 第二十五 wrapperClass 包装类

    wrapperClass 包装类         1.包装类的特点        2.装箱与拆箱操作        3.数据转型处理            内容        Object 类可以接收 ...

  9. 菜鸡的Java笔记 第二十七 - java 链表基本概念

    链表基本概念        1.链表的基本形式        2.单向链表的完整实现            认识链表        链表= 可变长的对象数组,属于动态对象数组的范畴        链表 ...

随机推荐

  1. Serverless 工程实践 | 零基础上手 Knative 应用

    作者|刘宇 前言:Knative 是一款基于 Kubernetes 的 Serverless 框架.其目标是制定云原生.跨平台的 Serverless 编排标准. Knative 介绍 Knative ...

  2. Rclone使用教程 - 挂载Onedrive和谷歌网盘

    1. 介绍 Rclone 是一个用于多个云平台之间同步文件和目录的命令行工具,其支持多种运营商网盘. 官网网址:https://rclone.org 开源地址:https://github.com/n ...

  3. 双系统升win11(grub启动问题修复与讲解)?!?

    起 最近win11不是出来了吗.(着急修复的可以直接跳到最后一步) 于是我就突发奇想给我半年没进去的windows升个级........ 于是我找到了我win11的升级包(从我一个同学哪儿) 工具都集 ...

  4. PAT (Basic Level) Practice (中文)1009 说反话 (20分)

    给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出. 输入格式: 测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串.字符串由若干单词和若干空格组成,其中单词是由英文字母(大小 ...

  5. 初学python-day11 函数3

    函数 1. global关键字 修改全局变量,声明函数内外使用同一个变量 示例: 1 name = 'xiaoming' 2 3 def test(): 4 global name 5 name = ...

  6. 【UE4 C++】打印字符串与输出日志

    打印屏幕 默认打印屏幕 // 打印至屏幕 FString screenMessage = "(AddOnScreenDebugMessage) Hello world!"; GEn ...

  7. 【c++ Prime 学习笔记】目录索引

    第1章 开始 第Ⅰ部分 C++基础 第2章 变量和基本类型 第3章 字符串.向量和数组 第4章 表达式 第5章 语句 第6章 函数 第7章 类 第 Ⅱ 部分 C++标准库 第8章 IO库 第9章 顺序 ...

  8. LeetCode:“剑指 Offer”

    LeetCode:"剑指 Offer" 刷题小菜鸡,花了几天时间做了一遍 LeetCode 上给出的 "剑指 Offer" 在此做一下记录 LeetCode主页 ...

  9. anaconda+pytorch安装

    环境配置说明: 因项目需要,需要写一个说明文档交付公司人员,指导其进行环境的安装 1. 安装 Anaconda 进入清华开源软件镜像站,其网址如下:https://mirrors.tuna.tsing ...

  10. 微信小程序的发布流程

    一.背景 在中大型的公司里,人员的分工非常仔细,一般会有不同岗位角色的员工同时参与同一个小程序项目.为此,小程序平台设计了不同的权限管理使得项目管理者可以更加高效管理整个团队的协同工作 以往我们在开发 ...