1 运算符

1.1 运算符的概念

  • 运算符是一种特殊的符号,用以表示数据的运算、赋值和比较等。
  • 在java语言中,运算符有如下的分类:
  • ①算术运算符。
  • ②赋值运算符。
  • ③比较运算符(关系运算符)。
  • ④逻辑运算符。
  • ⑤位运算符(略)。
  • ⑥三元运算符。

1.2 算术运算符

  • 示例:
package day03;

/**
* 算术运算符
*/
public class ArithmeticTest {
public static void main(String[] args) {
// +
int num1 = 12;
int num2 = 5;
int num3 = 1;
int num4 = 10;
System.out.println("加法:" + (num1 + num2));
// -
System.out.println("减法:" + (num1 - num2));
// *
System.out.println("乘法:" + (num1 * num2));
// /
System.out.println("除法:" + (num1 / num2));
// %
System.out.println("取模:" + (num1 % num2));
// 前++
int num5 = ++num2;
System.out.println("num5:" + num5);
System.out.println("num2:" + num2);
// 前--
int num6 = --num1;
System.out.println("num6:" + num6);
System.out.println("num1:" + num1);
// 后++
int num7 = num3++;
System.out.println("num7:" + num7);
System.out.println("num3:" + num3);
// 后--
int num8 = num4++;
System.out.println("num8:" + num8);
System.out.println("num4:" + num4); }
}
  • 示例:随意给出一个三位数的整数,打印显示其各位、十位和百位数的值。
package day03;

public class ArithmeticTest2 {
public static void main(String[] args) {
int num = 187;
int ge = num % 10;
int shi = num / 10 % 10;
int bai = num / 100;
System.out.println("各位:" + ge);
System.out.println("十位:" + shi);
System.out.println("百位:" + bai); }
}

1.3 赋值运算符

  • “=”
  • 当“=”两侧数据类型不一致的时候,可以使用自动类型转换或使用强制类型转换原则进行处理。
  • 扩展赋值运算符:+=、-=、*=、/=、%=。
  • 扩展赋值运算符不会改变自身的数据类型。
  • 示例:
package day03;

public class AssignmentTest {
public static void main(String[] args) {
//赋值符号
int i1 = 10;
int j1 = 20; //连续赋值
int i2, j2;
i2 = j2 = 10; int i3 = 5, j3 = 10; //+=
int num1 = 10;
num1 = num1 + 2;
System.out.println(num1); int num2 = 10;
num2 += 2;
System.out.println(num2); //-=
int num3 = 10;
num3 = num3 - 2;
System.out.println(num3); int num4 = 10;
num4 -= 2;
System.out.println(num4); }
}

1.4 比较运算符

  • 比较运算符的结果都是boolean类型,要么是true,要么是false。
  • 比较运算符“==”不要写成“=”。
  • 示例:
package day03;

/**
* 比较运算符
* ==
* !=
* >
* <
* >=
* <=
* instanceof
*/
public class ComparisonTest {
public static void main(String[] args) {
int num1 = 10;
int num2 = 5;
System.out.println("==:" + (num1 == num2));
System.out.println("!=:" + (num1 != num2));
System.out.println(">:" + (num1 > num2));
System.out.println("<:" + (num1 < num2));
System.out.println(">=:" + (num1 >= num2));
System.out.println("<=:" + (num1 <= num2)); }
}

1.5 逻辑运算符

  • 示例:
package day03;

/**
* 逻辑运算符
*/
public class LogicTest {
public static void main(String[] args) {
/**
* 区分 & &&
*/
boolean b1 = false;
int num1 = 10;
if (b1 & (num1++ > 0)) {
System.out.println("&你好啊");
} else {
System.out.println("&我很好嘛");
} System.out.println(num1); boolean b2 = false;
int num2 = 10;
if (b2 && (num2++ > 0)) {
System.out.println("&&你好啊");
} else {
System.out.println("&&我很好嘛");
} System.out.println(num2); }
}
  • 示例:
package day03;

/**
* 逻辑运算符
*/
public class LogicTest {
public static void main(String[] args) {
/**
* 区分 | ||
*/
boolean b1 = true;
int num1 = 10;
if (b1 | (num1++ > 0)) {
System.out.println("|你好啊");
} else {
System.out.println("|我很好嘛");
} System.out.println(num1); boolean b2 = true;
int num2 = 10;
if (b2 || (num2++ > 0)) {
System.out.println("||你好啊");
} else {
System.out.println("||我很好嘛");
} System.out.println(num2); }
}

1.5 三元运算符

  • 格式:
(条件表达式)?表达式1:表达式2;
  • 如果条件表达式的结果是true,那么运算后的结果就是表示式1。
  • 如果条件表达式的结果是false,那么运算后的结果就是表达式2。
  • 三元运算符和if-else的联系和区别?
  • ①三元运算符可以简化为if-else语句。
  • ②三元运算符要求必须返回一个结果。
  • ③if后的代码块可以有多个语句。
  • 示例:获取两个数中的最大值。
package day03;

/**
* 三元运算符
*/
public class TernaryTest {
public static void main(String[] args) {
int num1 = 10;
int num2 = 20; int result = num1 >= num2 ? num1 : num2;
System.out.println("num1和num2中的最大值是:" + result);
}
}
  • 示例:获取三个数中的最大值。
package day03;

/**
* 三元运算符
*/
public class TernaryTest {
public static void main(String[] args) {
int num1 = 10;
int num2 = 20;
int num3 = 30; int result = num1 >= num2 ? (num1 >= num3 ? num1 : num3) : (num2 >= num3 ? num2 : num3); System.out.println("num1和num2以及num3中的最大值是:" + result);
}
}

java基本语法二的更多相关文章

  1. Java基础语法<二> 字符串String

    1. 代码点与代码单元 Java字符串由char序列组成.大多数的常用Unicode字符使用一个代码单元就可以表示,而辅助字符需要一对代码单元表示. length()方法将返回采用UTF-16编码表示 ...

  2. Java基础语法(二)之流程控制语句

    流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块 .控制语句分为三类:顺序,选择和循环. “顺序结构”代表”先执行a,再执行b”的逻辑.比如,先找个女朋友, ...

  3. Java基础语法(二)<运算符>

    运算符: 下面的都是相关的练习: 1.键盘录入一个三位整数数,请分别获取该三位数上每一位的数值 import java.util.Scanner; public class Test02 { publ ...

  4. java基础语法(二)

    一.运算符 算数运算符 算数运算符用在数学表达式中,它们的作用和在数学中的作用一样. 操作符 描述 例子 + 两数相加 1+1=2 - 两数相减 2-1=1 * 两数相乘 1*1=1 / 两数相除 1 ...

  5. JavaSE入门学习7:Java基础语法之语句(下)

    继续接着Java基础语法来:JavaSE入门学习5:Java基础语法(一)和JavaSE入门学习6:Java基础语法(二). 语句 Java经常使用的3种循环:while.do...while,for ...

  6. java基础语法(二)--单列模式

    java基础语法(二)--单列模式 /** * 功能:单列模式 * @author Administrator * */ public class SingletonTest { public sta ...

  7. 062 01 Android 零基础入门 01 Java基础语法 07 Java二维数组 01 二维数组应用

    062 01 Android 零基础入门 01 Java基础语法 07 Java二维数组 01 二维数组应用 本文知识点:二维数组应用 二维数组的声明和创建 ? 出现空指针异常 数组的名字指向数组的第 ...

  8. 010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二——变量类型——即Java中的数据类型

    010 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 04 变量的三个元素的详细介绍之二--变量类型--即Java中的数据类型 Java中变量的三要素 变量名 变 ...

  9. 03:Java基础语法(二)

    Java基础语法 Java运算符 算术运算符 运算符是一种特殊的符号,用以表示数据的运算.赋值和比较等.1.操作数:参与运算的数据 称为操作数.2.表达式:运算符和操作数的整体 称为表达式.单独的一个 ...

随机推荐

  1. 实体类在set字段时报空指针异常

    实体类在set字段时报空指针异常的原因: T_Entry entry=null;entry.setGeneName("1212");entry.setEntryName(" ...

  2. 着重基础之—Spring Boot 编写自己的过滤器

    Spring Boot 编写自己的"过滤器" 又好久没有写博客进行总结了,说实话,就是 "懒",懒得总结,懒得动.之所以写这篇博客,是因为最近对接公司SSO服务的时候,需要自定义拦 ...

  3. [GO]关于go的waitgroup

    watigroup是用来控制一组goroutine的,用来等待一组goroutine结束 比如关于kafka的消费者代码除了生硬的让程序等待一个小时,也可以这样写 package main impor ...

  4. Jsp+servlet+mysql搭建套路

    1.建立数据库根据需求建立相应的数据库确立数据库的字段.属性.主键等2.建立javaweb项目,搭建开发环境在开发环境的/WebRoot/WEB-INF下建立lib文件夹,存放需要使用的jar包常用的 ...

  5. centos7安装 docker

    centos7安装 docker 切换到 root用户,执行: [root@localhost frinder]# yum install docker已加载插件:fastestmirror, lan ...

  6. (转) MVC身份验证及权限管理-1

    转自:http://blog.csdn.net/kenshincui/article/details/5559508 MVC自带的ActionFilter 在Asp.Net WebForm的中要做到身 ...

  7. NHibernate的搭建

    1.新建项目 Business:业务逻辑类 Data:数据层,存放数据库的操作及Nhibernate辅助类 Domain:数据实体和数据库映射文件 2.使用NuGet下载Nhibernate 数据库配 ...

  8. Asp.net mvc验证用户登录之Forms实现

    这里我们采用asp.net mvc 自带的AuthorizeAttribute过滤器验证用户的身份,也可以使用自定义过滤器,步骤都是一样. 第一步:创建asp.net mvc项目, 在项目的App_S ...

  9. hdu 4982 贪心构造序列

    http://acm.hdu.edu.cn/showproblem.php?pid=4982 给定n和k,求一个包含k个不相同正整数的集合,要求元素之和为n,并且其中k-1的元素的和为完全平方数 枚举 ...

  10. 成员函数指针与高性能C++委托

    1 引子 标准C++中没有真正的面向对象的函数指针.这一点对C++来说是不幸的,因为面向对象的指针(也叫做“闭包(closure)”或“委托(delegate)”)在一些语言中已经证明了它宝贵的价值. ...