【概述】

在if/条件语句中,我们已经谈及判断了,这次将详细讲讲一些逻辑判断

基本逻辑

&:且,And,需要二者均为True

|:或,Or ,需要二者其一为False即可

^:异或,XOE,两者结果不同为true,否则为false

!: 非,Not

短路

短路与 && 短路或 ||

简而言之,短路与或就是当“条件满足”就立刻执行,不会判断完所有条件,比如我们有两个boolean为A,B:

A&&B :如果A已经是false,则不去判断B;如果A是true,再去判断B

A||B :如果A是true,则直接执行,不判断B;如果A是false,再去检测B是否为true

短路与或不仅可以节省时间,在一些特殊情况有特殊作用

【运算顺序】

见下图

大部分情况下按着运算顺序写就好了,一般不会错

【转换】

转换有两种:显式转换 Narrowing or Explicit Conversion ,以及隐式转换 Widening or Automatic Conversion

隐式转换:一般是由低精度到高精度的转换,此时机器会帮助我们自动完成,比如(1 -> 1.0),一般在1.两种数据类型兼容且将较小数据类型的值分配给较大数据类型时进行。关于精度,见下表

     低 byte short int long float double 高 ,其中float和double会精确至小数

显式转换:与隐式相反,显式转换常常是把高精度向低精度转换的过程(1.0 -> 1),因此常常需要程序员去处理此事(指加代码)。在高转低的过程中,精度会丢失

使用方法是在要显式转换的数据前加上 (目标数据类型) ,比如

double a = 1.23456 ;
float b = (float)a ;
int c = (int)b ;

对于字符串中的数据转换,我们前一篇 https://www.cnblogs.com/RetenQ/p/14589583.html 已经提到了,那么如何将数值结果转为字符串呢,见下

Integer.toString(<int>)       //int转String
Byte.toString(<byte>) //byte转String
Short.toString(<short>) //short转String
Float.toString(<float>) //float转String
Boolean.toString(<Boolean>) //boolean转String
String.valueOf(<long>) //将long的值给予String
String.valueOf(<double>) //将double的值给予String
Character.toString(<char>) //char转换为String
<char> + "" //效果同上

另外,还有其它的一些小tips:

基本上每个字符char都有其ASCII值,当我们将char转换为int时,int将得到char的ASCII值

如果我们输入的char为数字(例如char ='1';),当我们将其转换为int时,返回值将不是1,则int将返回其ASCII值(比如这时候就是49)

类似于char转int,,现在我们有了int的ASCII值,char将返回其值(还是上一条的例子,这回是49变‘1’)

【Java】 5.0 判断与转换的更多相关文章

  1. JAVA之旅(十六)——String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较

    JAVA之旅(十六)--String类,String常用方法,获取,判断,转换,替换,切割,子串,大小写转换,去除空格,比较 过节耽误了几天,我们继续JAVA之旅 一.String概述 String时 ...

  2. Java 常用工具类---- 各种字符集编码判断与转换

    import java.io.UnsupportedEncodingException; /** * 判断字符编码 * * @author guyinyihun */ public class Cha ...

  3. Java中数组判断元素存在几种方式比较详解

    1. 通过将数组转换成List,然后使用List中的contains进行判断其是否存在 public static boolean useList(String[] arr,String contai ...

  4. Java+Windows+ffmpeg实现视频转换

    最近由于项目需要,研究了一下如何用Java实现视频转换,“着实”废了点心思,整理整理,写出给自己备忘下. 思路 由于之前没有没法过相关功能的经验,一开始来真不知道从哪里入手.当然,这个解决,googl ...

  5. Spark2.0 特征提取、转换、选择之一:数据规范化,String-Index、离散-连续特征相互转换

    数据规范化(标准化) 在数据预处理时,这两个术语可以互换使用.(不考虑标准化在统计学中有特定的含义). 下面所有的规范化操作都是针对一个特征向量(dataFrame中的一个colum)来操作的. 首先 ...

  6. Java中的线程状态转换和线程控制常用方法

    Java 中的线程状态转换: [注]:不是 start 之后就立刻开始执行, 只是就绪了(CPU 可能正在运行其他的线程). [注]:只有被 CPU 调度之后,线程才开始执行, 当 CPU 分配给你的 ...

  7. Java中类型判断的几种方式

    1. 前言 在Java这种强类型语言中类型转换.类型判断是经常遇到的.今天就细数一下Java中类型判断的方法方式. 2. instanceof instanceof是Java的一个运算符,用来判断一个 ...

  8. java integer对象判断两个数字是否相等

    java integer对象判断两个数字是否相等,不一定对 问题发生的背景:javaweb的项目,起先,因为在java中实体类中的int类型在对象初始化之后会给int类型的数据默认赋值为0,这样在很多 ...

  9. 使用json-lib进行Java和JSON之间的转换 [转]

    [转] http://www.cnblogs.com/mailingfeng/archive/2012/01/18/2325707.html 1. json-lib是一个java类库,提供将Java对 ...

随机推荐

  1. perl 打印简单的help文档

    更多 PrintHelp.pm #!/usr/bin/perl package PrintHelp; require Exporter; use v5.26; use strict; use utf8 ...

  2. Renice INC:不同颜色的酒帽所代表的意义

    酒帽就是酒瓶上方的热缩胶帽/锡帽/蜡封,也就是开瓶前要割掉的那一层保护物,所有的法国酒在酒帽上,都会有一个圆形贴纸,除了有不同颜色外,上面还有一串号码,有可能很多人在喝酒时都不会对这个酒帽有更多的在意 ...

  3. WPF MVVM实例三

    在没给大家讲解wpf mwm示例之前先给大家简单说下MVVM理论知识: WPF技术的主要特点是数据驱动UI,所以在使用WPF技术开发的过程中是以数据为核心的,WPF提供了数据绑定机制,当数据发生变化时 ...

  4. Python2和Python3编码的区别

    Python2 python2中有两种储存变量的形式,第一种:Unicode:第二种:按照coding头来的. 假设python2用utf8存储x='中文',当你print(x)的时候,终端接收gbk ...

  5. Android Layout属性

    通用属性 android:layout_height android:layout_width 值 含义 fill_parent/match_parent 高度或者宽度对齐到父控件 wrap_cont ...

  6. CSharp使用ANTLR4生成简单计算Parser

    ANTLR简介 ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, pr ...

  7. ASP.NET如何把ASPX网站部署到IIS上

    当一个项目完成了,你是否想过把它发布到服务器上去呢?那么下面就来告诉你如何去部署它吧! (Visual Studio版本: 2019) 首先要准备好你的项目 然后进行如下操作 第一大步骤 1.打开你需 ...

  8. beego 框架用的页面样式模板

    https://themequarry.com/category/free 页面样式

  9. java 面试经典题

    面向对象编程(OOP) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可靠性和灵活性. 增加代码 ...

  10. ASP.NET Core扩展库之实体映射

    在分层设计模式中,各层之间的数据通常通过数据传输对象(DTO)来进行数据的传递,而大多数情况下,各层数据的定义结构大同小异,如何在这些定义结构中相互转换,之前我们通过使用AutoMapper库,但Au ...