Java运算符和引用数据类型(Scanner、Random)

运算符

算术运算符:


运算符


运算规则


范例


结果


+


正号


+3


3


+



2+3


5


+


连接字符串


“中”+“国”


“中国”


-


负号


int a=3;-a


-3


-



3-1


2


*



2*3


6


/



5/2


2


%


取模


5%2


1


++


自增


int a=1;a++/++a


2


--


自减


int b=3;a--/--a


2

加法运算符在连接字符串时要注意,只有直接与字符串相加才会转成字符串。

除法“/”当两边为整数时,取整数部分,舍余数。当其中一边为浮点型时,按正常规则相除。

“%”为整除取余符号,小数取余没有意义。结果符号与被取余符号相同。

整数做被除数,0不能做除数,否则报错。

算术运算符++、--的使用

++运算符:会在原来的基础上自增1

--运算符:会在原来的基础上自减1

++、-- 运算符后置时,先使用变量原有的值参与运算,运算操作完成后,变量x的值自增1或者自减1

++、--运算符前置时,先将变量x的值自增1或者自减1,然后使用更新后的新值参与运算操作

赋值运算符


运算符


运算规则


范例


结果


=


赋值


int a=2


2


+=


加后赋值


int a=2,a+=2,(a=a+2)


4


-=


减后赋值


int a=2,a-=2

(a=a-2)


0


*=


乘后赋值


int a=2,a*=2

(a=a*2)


4


/=


整除后赋值


int a=2,a/=2


1


%=


取模后赋值


int a=2,a%=2


0

比较运算符

比较运算符,又叫关系运算符,它是用来判断两个操作数的大小关系及是否相等关系的,结果是布尔值true或者false。


运算符


运算规则


范例


结果


==


相等于


4==3


False


!=


不等于


4!=3


True


<


小于


4<3


False


>


大于


4>3


True


<=


小于等于


4<=3


False


>=


大于等于


4>=3


True

赋值运算符的=符号,符号与比较运算符的==符号是有区别的

赋值运算符的=符号,是用来将=符号右边的值,赋值给左边的变量

比较运算符的==符号,是用来判断==符号 左右变量的值是否相等的

逻辑运算符

逻辑运算符,它是用于布尔值进行运算的,运算的最终结果为布尔值true或false


运算符


运算规则


范例


结果


&



false&true


False


|



false|true


True


^


异或


true^flase


True


!



!true


Flase


&&


短路与


false&&true


False


||


短路或


false||true


True

逻辑运算符通常是连接两个其他表达式计算后的布尔值结果

当使用短路与或者短路或时,只要能判断出结果则后面的部分就不在判断

运算符的结果规律:

短路与&&:参与运算的两边数据,只要有false,则运算结果为false

短路或||:参与运算的两边数据,只要有true, 则运算结果为true

逻辑非!:参与运算的两边数据,原先是true则变成false,原先是false则变成true

//&与的运行结果

System.out.println(false&true);//false

System.out.println(true&false);//false

System.out.println(true&true);//true

System.out.println(false&false);//false

//&&短路与的运行结果

System.out.println(false&&true);//false

System.out.println(true&&false);//false

System.out.println(true&&true);//true

System.out.println(false&&false);//false

//例子

int a=1;

int b=1;

System.out.println(1==2&a++ ==1);//false

System.out.println(1==2&&b++ ==1);//false

System.out.println(a);//2

System.out.println(b);//1

注意:

与&和短路与&&的区别

&如果第一个值是false,还会判断第二个值

&&如果第一个值是false,将不会判断第二个值

//|或运行结果

System.out.println(false|true);//true

System.out.println(true|false);//true

System.out.println(true|true);//true

System.out.println(false|false);//false

//||短路或运行结果

System.out.println(false||true);//true

System.out.println(true||false);//true

System.out.println(true||true);//true

System.out.println(false||false);//false

//例子

int c=1;

int d=1;

System.out.println(1==1|c++ ==1);//true

System.out.println(1==1||d++ ==1);//true

System.out.println(c);//2

System.out.println(d);//1

 

注意:

// 或| 短路或||的区别

|如果第一个值为true,还会判断第二个值

||如果第一个值为true,不会判断第二个值

 

 

 

三元运算符

格式:

(条件表达式)?表达式1:表达式2

三元运算符的运算规则:

先判断条件表达式的值,若为true,运算结果为表达式1;若为false,运算结果为表达式2。

 

 

例子:

 

//随机出入三个数,然后输出最大值

import java.util.Scanner;

class Demo05 {

public static void main(String[] args) {

Scanner sc = new Scanner(System.in);

System.out.println("请输入第一个数:");

int x=sc.nextInt();

System.out.println("请输入第二个数:");

int y=sc.nextInt();

System.out.println("请输入第三个数:");

int z=sc.nextInt();

int max = (x>y?x:y)>z?(x>y?x:y):z;

System.out.println("最大值为:"+max);

}

}

Max= (x>y?x:y)>z?(x>y?x:y):z;

先判断两边括号里面x,y的值,如果x值大然后在跟z值比大小,若y值大然后y跟z值在比较大小

运算符优先级

每种运算符的优先级,按照运算先后顺序排序(优先级相同的情况下,按照从左到右的顺序依次运算)


优先级


描述


运算符


1


括号


()、[]


2


正负号


+、-


3


自增自减,非


++、--、!


4


乘除,取余


*、/、%


5


加减


+、-


6


移位运算


<<、>>、>>>


7


大小关系


>、>=、<、<=


8


相等关系


==、!=


9


按位与


&


10


按位异或


^


11


按位或


|


12


逻辑与


&&


13


逻辑或


||


14


条件运算


?:


15


赋值运算


=、+=、-=、*=、/=、%=


16


位赋值运算


&=、|=、<<=、>>=、>>>=

引用数据类型

Scanner类

Scanner类

Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据。

Scanner使用步骤:

导包:import java.util.Scanner;

创建对象实例:Scanner sc = new Scanner(System.in);

调用方法:

               int  i = sc.nextInt(); 用来接收控制台录入的数字
                                         String s = sc.next(); 用来接收控制台录入的字符串

例子:

import java.util.Scanner;

public class ScannerDemo01 {

public static void main(String[] args) {

//创建Scanner引用类型的变量

Scanner sc = new Scanner(System.in);

//获取数字

System.out.println("请输入一个数字");

int n = sc.nextInt();

System.out.println("n的值为" + n);

//获取字符串

System.out.println("请输入一个字符串");

String str = sc.next();

System.out.println("str的值为" + str);

}

}

   

运行结果:

随机数类Random

这个Random类,它可以产生多种数据类型的随机数,在这里我们主要介绍生成整数与小数的方式。

public int nextInt(int maxValue)       产生[0,maxValue)范围的随机整数,包含0,不包含maxValue;

public double nextDouble()  产生[0,1)范围的随机小数,包含0.0,不包含1.0。

l  Random使用方式:

n  import导包:所属包java.util.Random

n  创建实例格式:Random 变量名 = new Random();

接下来,通过一段代码,一起学习下Random类的使用,RandomDemo.java

import java.util.Random;

public class RandomDemo {

public static
void main(String[] args) {

// 创建Random类的实例

Random
r = new Random();

// 得到0-100范围内的随机整数,将产生的随机整数赋值给i变量

int i = r.nextInt(100);

//得到0.0-1.0范围内的随机小数,将产生的随机小数赋值给d变量

double d = r.nextDouble();

System.out.println(i);

System.out.println(d);

}

}

运行结果如下图所示:

原文地址:https://www.cnblogs.com/mengmengi/p/10419102.html

时间: 2024-08-03 03:54:10

Java运算符和引用数据类型(Scanner、Random)的相关文章

Java基础—运算符与引用数据类型Scanner、Random

运算符是用来计算数据的符号.数据可以是常量,也可以是变量.被运算符操作的数我们称为操作数. 1.操作数参与数学计算: 运算符 运算规则 范例 结果 + 正号 +3 3 + 加 2+3 5 + 连接字符串 “中”+“国” “中国” - 负号 int a=3;-a -3 - 减 3-1 2 * 乘 2*3 6 / 除 5/2 2 % 取模 5%2 1 ++ 自增 int a=1;a++/++a 2 -- 自减 int b=3;a--/--a 2 2.赋值运算符: 运算符 运算规则 范例 结果 = 赋

java基础(4):引用数据类型、流程控制语句

1. 引用数据类型 1.1 Scanner类 我们要学的Scanner类是属于引用数据类型,我们先了解下引用数据类型. 引用数据类型的使用: 与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固定的步骤或格式. 数据类型  变量名  =  new 数据类型(); 每种引用数据类型都有其功能,我们可以调用该类型实例的功能. 变量名.方法名(); Scanner类 Scanner类是引用数据类型的一种,我们可以使用该类来完成用户键盘录入,获取到录入的数据. Scanner使用步骤:

java中的引用数据类型

java数据类型图: ┏数值型━┳━整数型:byte short int long ┏基本数据类型━━┫ ┗━浮点型:float double ┃ ┣字符型:char 数据类型╋ ┗布尔型:boolean ┃ ┏类(class) ┗引用数据类型━━╋接口(interface) ┗数组(array)java的数据类型分基本数据类型(原始数据类型)和引用数据类型:1.基本八大类,图中可以很清楚的看到:这种类型的数据变量在声明之后java就会立刻分配给他内存空间.如:short a; java会在可使

java集合存放引用数据类型的小问题

博主自身只是一枚刚入编程坑的菜鸟,此文记录的问题较为肤浅,仅供小小白学习 先来看一段demo代码及结果: 1 package test; 2 3 import java.util.ArrayList; 4 5 public class Demo { 6 7 public static void main(String[] args) { 8 ArrayList<Person> personList = new ArrayList<Person>(); 9 //方法一: 10 for

java中的基本数据类型和引用数据类型

java中基本数据类型有8种:byte,short,int,long,char,float,double,boolean 整型有四种:byte short,int,long byte:   1字节  -128--127 short:  2字节   -32768 -- 32767 int:  4个字节   -2147483648  -- 2147483647(超过20亿) long: 8个字节   -9223372036854775808  -- 9223372036854775807 注:jav

java 运算符 数据类型的引用 流程控制语句

赋值运算符= 赋值+=加后赋值-=减后赋值*=乘后赋值/=除后赋值%=取余后赋值a+=2 类似于a=a+2 其他一样 比较运算符==等于!=不等于<小于>大于<=小于等于>=大于等于 逻辑运算符& 与| 或^异或!非&&短路与||短路非短路与&&:参与运算的两边数据,有false,则运算结果为false:短路或||:参与运算的两边数据,有true,则运算结果为true:逻辑非! : 参与运算的数据,原先是true则变成false,原先是fal

java中的输入流(Scanner),数据类型,运算符,switch,数组的用法

//java中创建包用package相当于C#的命名空间namespace,java中导入包用import相当于C#中引入命名空间usingimport java.util.*;//导入包,*代表导入java.util包下面的所有类public class Test { /***********Scanner的使用************/// public static void main(String[] args) {//  Scanner input = new Scanner(Syst

Java的标识符,数据类型与各种运算符

一.标识符 用作给变量.类和方法命名 java强调标识符有如下命名规则: 标识符必须以字母,下划线_,美元$开头 标识符其他部分可以是字母,下划线"_",美元符"$"和数字的任意组合 标识符大小写敏感,长度无限制 不可以是java关键字 JAVA不采用通常语言使用的ASCII字符集,而是采用unicode这样标准的国际字符集. 因此这里的字母的含义:英文,汉字 合法的字符集: int a = 3; int _123 = 3; int $12aa = 3; int 变

java引用数据类型(类)

1 引用数据类型分类 类的类型分两种 1)Java提供好的类,如Scanner类,Random类等,这些已存在的类中包含了很多的方法与属性,可供开发者使用.(类的变量是属性) 2)开发者自己创建的类,按照类的定义标准,可以在类中包含多个方法与属性,来供开发者使用. 注意: 类的变量就是属性 类中只能定义变量和方法 2自定义数据类型 在Java中,将现实生活中的事物抽象成了代码.可以使用自定义的数据类型(类)来描述(映射)现实生活中的事物. 类,是引用数据类型,自定义类也是一种数据类型. 自定义类