java && || 逻辑运算符,String如何去判断是否为空,时间相比较大小,三目运算符

  1.  每次在编码的时候 ,总是在网上搜索确定一下&& || 用法,
  2. String如何去判断是否为空的标准,写法,
  3. 以及时间相比较大小,
  4. 三目运算符
  5. 今天抽点空给自己做个总结,在此记下笔记,方便日后自己使用。

package com.sciyon.business.vms.entity;


public class Test {
  /**
   * && 短路,逻辑运算符 再满足两者都为true结果才为true.如果&&前面表达式为false则&&后面的表达式,就不再执行,提高代码效率
   * ||短路,逻辑运算符只有有一个条件为true结果就为true,如果||前面的表达式为true则||后面的表达式将不再执行,提高代码效率
   * 开发过程中关于逻辑运算符,也只会用这两个短路而不会取采用&  ,|,代码效率问题
   * @param args
   */
  public static void main(String[] args) {
    //&&
    int a=3,b=4;
    if(a==4&&b==3){
      
      System.out.println("a==4为假结果为false=====所以不进if执行语句");
    }else{
      System.out.println("a==4为假结果为false");
    }
    if(a==3&&b==4){
      System.out.println("a==3为真,继续执行&&表达式后面语句,b==4也为真,两者都为真的时候,结果为真");
      
    }


  }  
}
=======================三目条件运算符,亲测可用=============》

package com.sciyon.business.vms.entity;
public class Test {
    /**
     *三目条件运算符,语法    x ? y : z 
     *规则如下:当x条件为true的时候整个表达式结果为y
     *反之x条件为false的时候,整个表达式结果为z
     * 
     */
    public static void main(String[] args) {
        int a=4;
        String testname= a>3 ? "a>3结果为真所以testname,是我"  :   "a<3结果为真所以testname,是我";
        System.out.println(testname);//a>3结果为真所以testname,是我
    }    
}
==============java 两个时间日期相比较大小代码如下,亲测可用===============》

package com.sciyon.business.vms.entity;


import java.util.Date;
import java.util.Random;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class Test {
  /**
   *  sdf.parse() 将为字符串时间格式转换为日期格式
   *  sdf.format()将日期格式转换为字符串
   *  两个时间比较,首先都转换为日期格式,然后调用getTime()方法进行比较
   * 
   */
  public static void main(String[] args) {
    SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
         String str="2020-11-12 15:10:20";
         String str1="1993-11-12 15:10:20";
           Date date3=new Date();
           try {
      Date date=sdf.parse(str);
      Date date1=sdf.parse(str1);
      if(date.getTime()>date3.getTime()){
        System.out.println(date);//Thu Nov 12 15:10:20 CST 2020
        System.out.println(date3);//Sat Mar 23 15:52:16 CST 2019
        System.out.println( "date>date3");
      }
    } catch (ParseException e) {
      e.printStackTrace();
    }
  }  
}

========String类型判断字符串是否为空的有效写法,与规范性,效率性=======>

package com.sciyon.business.vms.entity;


import java.util.Date;
import java.util.Random;
import java.text.ParseException;
import java.text.SimpleDateFormat;
public class Test {
    /**
     * 判断string是否为空
     * 首先要明白两点 null 和""的区别 ,或者直白的说你知道null是什么?首先对象有哪些方法?
     * 为了弄明白为什么每次判断字符串是否为空,
     * 我正常的判断是否为空  str==null ||"".equals(str) 但是网上好多人说直观效率低,虽然都是看了一个人的总结就出来比比效率低,但也是事实呢
     *  改正还是用第二种方式:str==null||str.isEmpty() 
     * String str =null 他引用的指针指向null并没有申请内存,也就没真正意义上new对象也就是没有创建对象,所以,当你str.equals()直接报空指针根本就用不了string提供的方法。比如你写一个str .length()我相信他还是报空指针
     *    
     * 
     * 
     */
    public static void main(String[] args) {
        String str=null;//null str引用指向了null并没有申请内存分配,说白了就没有new对象,null就不属于对象 
        String str1 ="";
        if(str.equals(str)){
            System.out.println("测试");
            //Exception in thread "main" java.lang.NullPointerException
      //at com.sciyon.business.vms.entity.Test.main(Test.java:22)
      //直接报空指针
    }
    if(str1.equals(str1)){
      System.out.println("测试");//输出结果测试
    }
  }  
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值