1、数据类型:

数据类型范围:

byte:-2^7 ~ 2^7-1,即-128 ~ 127。1字节。Byte。末尾加B

short:-2^15 ~ 2^15-1,即-32768 ~ 32767。2字节。Short。末尾加S

有符号int:-2^31 ~ 2^31-1,即-2147483648 ~ 2147483647。4字节。Integer。

无符号int:0~2^32-1。

long:-2^63 ~ 2^63-1,即-9223372036854774808 ~ 9223372036854774807。8字节。Long。末尾加L。(也可以不加L)

Java整型常量默认为int类型,如果要声明long类型,后面加“L”:

long num = 1L;

  

java浮点型常量默认为double类型,如果要声明float类型常量,后面加“F”:

float num1 = 1.1;  // 编译错误,因为1.1默认为double类型,8字节,float4字节。
float num = 0.1F;

  

2、char数据类型:在Java中,char本质是一个整数,默认输出数字时,是Unicode对应的字符。

  如果是汉子以及英文字母是直接输出原值,如果是数字直接输出的话是Unicode对应字符。

  public static void main(String[] args) {
char c1 = '黄';
char c2 = 97;
// 在Java中,char本质是一个整数,默认输出时,是Unicode对应的字符
// 如果要输出对应的数字,使用(int)
System.out.println(c1); // 黄
System.out.println(c2); // a
System.out.println((int)c1); // 40644
System.out.println((int)c2); // 97
}

  

    // char类型是可以运算的,相当于一个整数,因为它有对应的Unicode码
System.out.println('a' + 10); // 97 + 10 = 107
char c3 = 'b' + 1; // 98 + 1 = 99
System.out.println((int)c3); // 99
System.out.println(c3); // 99对应的ASCII表=> c

  

3、数据类型转换:

  自动转换规则:低精度向高精度可以自动转换。

  

  public static void main(String[] args) {
int num = 'a'; // char -> int
double d = 80; // int -> double
System.out.println(num); // 97
System.out.println(d); // 80.0
}

  

4、强制类型转换:低精度转高精度。

  易造成精度损失。

  int m = 10;
short c = (short)m;

  

5、基本数据类型和String类型的互相转换:

  public static void main(String[] args) {
// 字符串转基本数据类型,使用基本数据类型对应的包装类。
String num = "10";
int num1 = Integer.parseInt(num);
float num2 = Float.parseFloat(num);
double num3 = Double.parseDouble(num);
System.out.println(num1 + " " + num2 + " " + num3); // 基本数据类型转string,后面加 ""即可
int nums = 10;
String str = nums + "";
System.out.println(str);
}

  

6、逻辑运算符:

  短路与:&&、短路或 ||、取反:!

  逻辑与:&、逻辑或 |、逻辑异或: ^

  逻辑异或:a^b,当a和b不同时,结果为true,否则为false。

  对于&&短路与而言,如果第一个条件为false,后面条件不在继续判断。

  对于&逻辑与而言,如果第一个条件为false,后面条件仍然会判断。

  短路或||:如果第一个为true,则第二个不会判断,最终结果为true,效率高。

  逻辑或|:不管第一个是否为true,都会判断第二个条件,效率低。

  开发中,基本用短路或 ||。

Java基础学习:2、Java数据类型及逻辑运算符的更多相关文章

  1. java基础学习总结——java环境变量配置(转)

    只为成功找方法,不为失败找借口! 永不放弃,一切皆有可能!!! java基础学习总结——java环境变量配置 前言 学习java的第一步就要搭建java的学习环境,首先是要安装 JDK,JDK安装好之 ...

  2. Java基础学习(一)---Java初识

    一.Java介绍 关于Java的诞生和发展网上比较多,在此就不再赘述了,可以参考http://i.cnblogs.com/EditArticles.aspx?postid=4050233. 1.1 J ...

  3. java基础学习:java中的反射

    一.什么是java反射 什么是 java 的反射? 说到反射,写这篇文章时,我突然想到了人的"反省",反省是什么?吾一日三省吾身,一般就是反思自身,今天做了哪些对或错的事情. ja ...

  4. java基础学习总结——java环境变量配置

    前言 学习java的第一步就要搭建java的学习环境,首先是要安装JDK,JDK安装好之后,还需要在电脑上配置"JAVA_HOME”."path”."classpath& ...

  5. Java基础学习总结——Java对象的序列化和反序列化

    一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化. 把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬盘上,通常存 ...

  6. java基础学习总结——java读取properties文件总结

    摘录自:http://www.cnblogs.com/xdp-gacl/p/3640211.html 一.java读取properties文件总结 在java项目中,操作properties文件是经常 ...

  7. Java基础学习笔记-Java数据类型转换-(~ ̄▽ ̄)~

    JAVA数据类型和JS数据类型转换不一样,因为它是强类型语言嘛 类型转换规则 不允许数值类型和布尔类型 转换 整型.实型.字符型数据可以混合运算 类型转换分类 自动类型转换-隐式转换 1.整数转换为小 ...

  8. Java基础学习总结--Java对象的序列化和反序列化

    一.序列化和反序列化的概念 把对象转换成字节序列的过程称之为对象的序列化 把字节序列恢复为对象的过程称之为对象的反序列化 对象序列化的主要用途: 1)把对象的字节序列永久的保存到硬盘上,通常放在一个文 ...

  9. 转载-java基础学习汇总

    共2页: 1 2 下一页  Java制作证书的工具keytool用法总结 孤傲苍狼 2014-06-24 11:03 阅读:25751 评论:3     Java基础学习总结——Java对象的序列化和 ...

  10. 尚学堂JAVA基础学习笔记

    目录 尚学堂JAVA基础学习笔记 写在前面 第1章 JAVA入门 第2章 数据类型和运算符 第3章 控制语句 第4章 Java面向对象基础 1. 面向对象基础 2. 面向对象的内存分析 3. 构造方法 ...

随机推荐

  1. About TopoJSON

    An extension of GeoJSON that encodes topology!  TopoJSON https://github.com/topojson/topojson The To ...

  2. 亲测:一个完整Vue开发环境搭建。

    参考博客飞机: https://www.cnblogs.com/zhaomeizi/p/8483597.html

  3. Maven简答题

    1.什么是Maven? 自动化构建工具,专注服务于Java平台的项目构建和依赖管理 2.使用Maven的好处以及原因? (1)大量的jar包反复复制,造成冗余.使用Maven后每个jar包只在本地仓库 ...

  4. webpack4从0开始构建前端单页项目(15)用clean-webpack-plugin清理构建前的目录(dist)

    clean-webpack-plugin 这个插件用来清空打包后的 dist 目录下的文件.可以避免每次打包前手动删除构建目录(dist)下的文件. 安装 clean-webpack-plugin c ...

  5. 1067- invalid default value for ""

    创建表时报的,一个时间字段类型是datetime,一保存就报错,网上说是datetime类型只支持mysql 5.6.5+,我看了下我的版本,5.8的,没什么问题,然后找了许久找到了错误的地方. 很蠢 ...

  6. SVN: E155004: THERE ARE UNFINISHED WORK ITEMS IN ''; RUN 'SVN CLEANUP' FIRST

    eclipse的SVN更新或者还原都报错 使用clean up也不好用 解决办法 通过网址https://www.sqlite.org/download.html下载这个软件 解压放到.svn文件夹下 ...

  7. ksfitappUI自动化(准备+安装环境)

    一.原理+安装 https://blog.csdn.net/weixin_30624825/article/details/94803252 https://www.kancloud.cn/guanf ...

  8. 现代 C++ 教程 高速上手 C++ 11/14/17/20

    国人作品,主要介绍C++11/14/17的新特性,适合新手阅读

  9. agl---atumotive grade linux开篇

    linux本人也玩过,捯饬过双系统win7+Ubuntu,搞过虚拟机跑fedora,做开发,除了觉得酷,能接触到整个程序开发.编译.链接,程序效率高外,没觉得啥好,关键生态也无丰富,我这种伪码农,也就 ...

  10. sshpass免密登录源码剖析

    源码下载地址:https://sourceforge.net/projects/sshpass/ 免密登陆程序sshpass源码解析,短小精悍的程序,非常值得学习!