JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符
// Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符 /*
* 一 Java操作符
*
* Java操作符都有哪些?
* +, -, *, /, %, ++, --
* 这里需要注意 a++ 和 ++a 的区别,后面说;
*/ /*
public class Javase{
public static void main(String[] args){
int a = 10;
int b = 20;
int c = 30;
System.out.println( a+b );//a+b=30;
System.out.println( b-a );//b-a=10;
System.out.println( a*b );//a*b=200;
System.out.println( b/a );//b/a=2;
System.out.println( b%a );//这里%是求余操作符,b/a=2.....0;所以结果是0;
System.out.println( c%b );//c/b=1...10;所以结果是10;
a++;//相当于a=a+1;
System.out.println( a );//结果为11;
a--;//相当于a=a-1;
System.out.println( a );//结果为10,因为上面a=11; }
}
*/ //------------------------------------------------------------------------------ /*
* 二 Java关系运算符
*
* Java关系运算符都有哪些?
* >, >=, <, <=, ==, !==
* 关于多重运算中的优先级问题,这里建议用括号括起来,避免脑子里计算上的错误;
*
*/
/*
public class Javase{
public static void main(String[] args){
int a = 10;
int b = 10; boolean c = (a==b);//boolean的值只有true(真)和false(假),所以这里是做一个判断,判断a是不是等于b,若判断为真,输出true,反之输出false System.out.println( a>b );//这里很明显a和b是相等的,所以这里结果会是false,后面的自己判断
System.out.println( a>=b );
System.out.println( a<b );
System.out.println( a<=b );
System.out.println( a==b );
System.out.println( a != b ); }
}
*/ //------------------------------------------------------------------------------ /*
* 三 Java逻辑运算符
* 这个跟大学课程里的门的体系一样(与非门,或非门等等)
* 判断符:
* & 位与 两边都是true,才是true
* | 位或 一边是true,结果才是true
* ! 位非 取反
* ^ 位异或 两边逻辑值不相等 才是true
*
* 逻辑比较:
* && 符号两边都为真才会为真,有一个错都是假
* || 符号两边只要有一个为真就为真
* !
* ^
*
* 举个简单的例子:
* (1=2 & 1=1)----->左边是假,右边是真,但是判断符是位与,有一个为假都是假,两个为真才是真,所有这个结果是假false
* (1=2 | 1=1)----->还是同一个,判断符是位或,有一个为真就是真,结果是真ture
*
*/ /*
public class Javase{
public static void main(String[] args){
System.out.println(5>3 & 5>4);
System.out.println(5>3 && 5>4);
System.out.println(3>5 & 6>7);//第二步仍然会运算
System.out.println(3>5 && 6>7);//一个为假就为假,第二步就不会运算
System.out.println(5>3 | 5>9);//仍然会运算
System.out.println(5>3 || 5>9); //一个为真就为真,所以后面不会再运算
System.out.println(5>11 | 5>10);
System.out.println(5>11 || 5>10); //后面要算
System.out.println(!false);
System.out.println(true ^ false);//true
System.out.println(false ^ true);//true
System.out.println(true ^ true);//false
System.out.println(false ^ false);//false
}
} */ //------------------------------------------------------------------------------ /*
* 四 赋值运算符
*
* 赋值运算符都有哪些:
* =(基本赋值运算符)
* += 加等于
* -= 减等于
* *= 乘等于
* /= 除等于
* %= 余等于
*
* 怎么用呢:
* 例如: i += 10; 就向当于i = i + 10;就是让i和10相加,然后再赋值给i;
*
*
* 说到这里,把之前留下的问题解决一下,就是i++;和++i;的区别,下面上例子.
*/ /*
public class Javase{
public static void main(String[] args){
int i = 10;
//i = i++;
//System.out.println( i );//输出结果为10;
i = ++ i;
System.out.println( i );//输出结果为11;
//这是为什么呢?
//首先,i = i ++;是先赋值后++,而i=10;所以结果是10;
//而i = ++i;是先++1,然后在赋值给i,所以结果为11;
}
}
*/ //下面直接说赋值运算符,下面上例子=========================================== /*
public class Operator_04{
public static void main (String [] args)
{
//基本赋值预算符,试一下用byte试试=127
int a = 10; //+=
a += 10;
System.out.println(a);
//-=
a -= 5;
System.out.println(a);
//*=
a *= 5;
System.out.println(a);
// /=
a /= 15;
System.out.println("a = " + a);
System.out.println( 10/15 );
// %=
a %= 2;
System.out.println(a);
//-----------------------------------
//内部自动类型转换
byte i = 10;
//两次运算;由于后面的1是一个整型;所以会自动转换成整型,结果也是整型;但是前面的i变量是指定的byte型,把一个整型赋给byte型肯定报错
//i = i + 1; //设个是一步运算;但是会预先进行数据类型转换,转换成本类的数据类型;所以会损失精度
i += 119;
System.out.println("hello");
System.out.println(i);
}
}
*/ //------------------------------------------------------------------------------ /*
* 五 字符串连接符
*
* 字符串连接符: +
* 说实话,把这个单独拿出来做一章说有些浪费,这个符的作用在代码和运行结果上看很容易明白,我就不扯没用的了,只说几个稍微值得注意的吧:
* 字符串连接符"+":即使数值加和运算符,也是字符串连接符;
* 他会进行自动数据类型转换(boolean不参与转换)
* 运算结果也是字符串类型
*
*/ /*
public class Operator_05{
public static void main (String [] args)
{
//字符串连接符
System.out.println("PI=" + 3.14); int a = 10;
int b = 12;
System.out.println("a+b = " + (a+b)); //a+b=22
System.out.println("a+b = " + a+b); //a+b=1012 从左往右,挨个计算,数据类型挨个转换
System.out.println(a + "+"+b+"=" +(a+b)); //10+12=22 括号提高性运行级别,先运算 }
}
*/ //------------------------------------------------------------------------------ /*
* 六 三元运算符
*
* 什么是三元运算符?
* 条件判别式 ? 真执行的语句 : 假执行的语句
* 上面就是三元运算符的写法,感觉没什么可说的,还是直接上代码吧
*/ public class Operator_06{
public static void main (String [] args)
{
boolean sex = false;
//10 //这个不是语句;单独的值,单独的
char c = (sex ? '男' : '女');
System.out.println(c);
boolean isSuccess = true;
System.out.println(isSuccess?'s':"失败");
}
}
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>杰我教育WWW.JAOVO.COM<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
JavaSE复习日记 : Java操作符\关系运算符\逻辑运算符\赋值运算符\字符串连接符\三元运算符的更多相关文章
- JavaSE复习日记 : java包机制
这里是第一个文件,命名为JavaSE_01.java,我在这个文件里面声明了一个m1()方法,通过包机制,我将在另外一个文件夹里访问这个文件里的东西,确切的说是访问这个文件生成的一个class文件; ...
- JavaSE复习_1 Java的基本格式和运算符
△.代表在当前目录.classpath能在任何路径下访问类文件. △单行注释可以嵌套,多行注释不能嵌套 △java中的标识符只能有数字,字母,$和_,其他的符号都是错误的,不合法的.其中数字不能是开头 ...
- Effective Java 第三版——63. 注意字符串连接的性能
Tips 书中的源代码地址:https://github.com/jbloch/effective-java-3e-source-code 注意,书中的有些代码里方法是基于Java 9 API中的,所 ...
- Java学习笔记四:三目运算符与字符串连接符等
一 .三目运算符与自增自减 GitHub代码练习地址:https://github.com/Neo-ML/JavaPractice/blob/master/OperPrac02.java 条件运算符由 ...
- 040_字符串连接符 041_条件运算符目 042_运算符优先级_逻辑与或优先问题 043_自动类型转化 044_强制类型转换 045_基本类型常见错误_溢出_L问题
040_字符串连接符 package test_package; /** * 字符串运算符 * @author * */public class TestOperator05 { public sta ...
- JavaSE复习日记 : 继承关系和super关键字以及继承关系中方法的覆写
/* * 类的继承和super关键字 * * 软件开发的三大目的: * 可拓展性; * 可维护性; * 可重用性; * * 这里单说下可重用性这一项: * 为了代码复用,复用方式有: * 函数的调用复 ...
- JavaSE复习日记 : 算是个小前言吧
/* * Java也学了好久了,抽个时间整理了一下课堂笔记,也有些是我刚开始学会犯的一些错误.在这里浅谈一下JavaSE的基础内容,对我来说也是一种不错的复习方式. * * 那好,对于初学者来说,学习 ...
- JavaSE复习日记 : 方法的调用和方法的重载
/* * 方法的调用和方法重载 */ /* * 什么是方法? * 方法就是一个有名字的代码段; * 方法的调用: * 在方法里调用另外一个方法里面的东西就是方法调用; * 或者可以认为"另外 ...
- JavaSE复习日记 : 抽象类
/* * 抽象类 * 抽象: * 面向对象的三大核心思想; * 封装: 封装,ppp是封装的一部分 * 继承; * 多态: 父类的引用指向子类的对象 * 引用: 是指一个引用型变量 * 有哪些变量? ...
随机推荐
- restful_api
http://www.ruanyifeng.com/blog/2014/05/restful_api.html
- docker 容器开启ssh服务
ssh服务安装 安装ssh服务 #yum install openssh-server -y 安装passwd(修改密码需要) #yum install passwd -y 修改sshd_config ...
- Unix/Linux环境C编程入门教程(16) LinuxMint CCPP开发环境搭建
1. Linux Mint由Linux Mint Team团队于2006年开始发行,是一份基于 这个时候linuxmint安装完成,C/C++开发环境也配置完成,希望大家认真实践!
- Exec sql/c
Exec sql/c 利用高级语言的过程性结构来弥补SQL语言实现复杂应用方面的不足. 嵌入SQL的高级语言称为主语言或宿主语言. 在混合编程中,SQL语句负责操作数据库,高级语言语句负责控制程序流程 ...
- Babelfish(二分)
Babelfish Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 37238 Accepted: 15879 Descr ...
- 怎样通过css的media属性,适配不同分辨率的终端设备?
怎样通过css的media属性,适配不同分辨率的终端设备,示比例如以下: <!DOCTYPE html> <html> <head> <title>首页 ...
- js 数组,字符串,JSON,bind, Name
/** * Created by W.J.Chang on 2014/5/23. */ // 判读是否是数组的方法 console.log(Array.isArray(new Array)); con ...
- HTML之学习笔记(七)列表
html的列表分为有序列表,无序列表和自定义列表 1.有序列表(order list) 代码演示 <ol type="a"> <li>第一项数据</l ...
- IO与文件读写---使用Apache commons IO包提高读写效率
觉得很不错,就转载了, 作者: Paul Lin 首先贴一段Apache commons IO官网上的介绍,来对这个著名的开源包有一个基本的了解:Commons IO is a library of ...
- C++ template学习一(函数模板和模板函数)
函数模板和模板函数(1)函数模板函数模板可以用来创建一个通用的函数,以支持多种不同的形参,避免重载函数的函数体重复设计.它的最大特点是把函数使用的数据类型作为参数.函数模板的声明形式为:templat ...