一、java运算符
1.算数运算符
算术运算符包括:“+”、“-”、“*”、“/”、“%”、“++”、“--”、“+(可以表示字符串相加)”
代码示例:
public class test01 {
public static void main(String[] args) {
int a = 3;
int b = 3;
int c = 50;
int d = 101;
System.out.println(++d%3*5 + ++d*2%2/2);
System.out.println("d"+"d+1");
System.out.println((c+b-a)/2%2*d);
}
}
自增自减的原则是: 如果运算符在变量的前面,则该变量自增 1 或者自减 1,然后返回的是变量的新值,如 果运算符在变量的后面,则变量也会自增或者自减 1,但是返回的是变量原来的值。++ 在前就是先运算,再取值,++在后就是先取值,再运算。
例如:int b = 3;
System.out.print(b++); //=3
System.out.print(b); //=4
System.out.print(b++); //=4
System.out.print(b++); //=5
System.out.print(++b); //=7
System.out.print(++b); //=8
System.out.println(++b); //=9
2.赋值运算符
“=”、“+=”、“-=”、“*=”、“/=”、"%="
代码示例:
public class test07 {
public static void main(String[] args) {
int a = 5;
a += 2;
System.out.println(a);
a-=4;
System.out.println(a);
a*=4;
System.out.println(a);
a/=2;
System.out.println(a);
a%=4;
System.out.println(a);
}
}
3.比较运算符(boolean)
包括:"=="、"!="、"<"、">"、"<="、">="
4.逻辑运算符
包括:"&"、"|"、"^"、"!"、"&&"、"||"
示例: int q =10;
int w = 16;
int e = 10;
int r = 19;
System.out.println(q==e); //T
System.out.println(q<=r); //T
System.out.println(q<r); //T
System.out.println(q>w); //F
System.out.println(w>=q); //T
System.out.println(w==q); //F
System.out.println((q<=w)&(q>=w)); //F
System.out.println((q<=w)&(r>=w)); //T
System.out.println((q>=w)^(q<=w)); //T
System.out.println((q!=w)); //T
5.三元运算符
格式:(条件表达式)?表达式1:表达式2
意思为:如果条件为 true,运算后的结果是表达式 1;
如果条件为 false,运算后的结果是表达式 2;
示例:
public class test08 {
public static void main(String[] args) {
int z,x = 10,y = 11;
z=(x>y)?x:y;
System.out.println(z);
}
}
简单引用类型(Scanner 和 Random)
1.Scanner 类
我们要学的 Scanner 类是属于引用数据类型,我们先了解下引用数据类型。
引用数据类型的使用
与定义基本数据类型变量不同,引用数据类型的变量定义及赋值有一个相对固 定的步骤或格式。
数据类型 变量名 = new 数据类型();
每种引用数据类型都有其功能,我们可以调用该类型实例的功能。
变量名.方法名();
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 test05 {
public static void main(String[] args) {
Scanner sr = new Scanner(System.in);
System.out.println("请输入你的成绩:");
int a = 60;
int b = 70;
int c = 80;
int d = 90;
int e = 100;
int input = sr.nextInt();
if(input<b && input>=0) {
System.out.println("差");
}
else if (input >=b && input<=c) {
System.out.println("中");
}else if (input >=c && input<=d) {
System.out.println("良");
}else if (input >=d && input<=e) {
System.out.println("优");
}else{
System.out.println("你输入的是什么玩意!输入不合法。");
}
}
}
2.随机数类 Random
我们来学习下,用来产生随机数的类 Random,它也属于引用数据类型。
这个 Random 类,它可以产生多种数据类型的随机数,在这里我们主要介绍生成整数与小数的方式。
方法简介
public int nextInt(int maxValue) 产生[0,maxValue)范围的随机整数,包含 0,不包含maxValue;
public double nextDouble() 产生[0,1)范围的随机小数,包含 0.0,不包含 1.0。
引用数据类型的使用方式,在学习键盘录入 Scanner 时,我们已经学习过,在这里,再 次回顾一下:
Random 使用方式:
import 导包:所属包 java.util.Random
创建实例格式:Random 变量名 = new Random();
示例:
import java.util.Random;
public class test04 {
public static void main(String[] args) {
Random rd = new Random();
int aa = rd.nextInt(100);
System.out.println(aa);
double dd = rd.nextDouble();
System.out.println(dd);
long ll = rd.nextLong();
System.out.println(ll);
float ff = rd.nextFloat();
System.out.println(ff);
double d = rd.nextDouble();
int f = (int)(d*100);
System.out.println(f);
}
}
流程控制语句
选择结构 if
if 语句
if...else语句
if....else if...else if......else语句
示例:
import java.util.Scanner;
public class test06 {
public static void main(String[] args) {
System.out.println("我们玩一个猜分数的小游戏吧,给你五次机会啊,猜不对请我吃饭。");
System.out.println("开始输入你的第一个数字:");
Scanner sc = new Scanner(System.in);
int a = sc.nextInt();
int scd =77;
if(a == scd) {
System.out.println("你太聪明了,竟然一下子就猜出了答案,给你给糖果吃。");
}else if(a>77){
System.out.println("你猜的分数太高了,比这个要低一些,你还有四次机会哦!");
}else if(a<77){
System.out.println("你猜的分数太低了,比这个要高一些,你还有四次机会哦!");
}
int b = sc.nextInt();
if(b == scd) {
System.out.println("你太聪明了,竟然一下子就猜出了答案,给你给糖果吃。");
}else if(b>77){
System.out.println("你猜的分数太高了,比这个要低一些,你还有三次机会哦!");
}else if(b<77){
System.out.println("你猜的分数太低了,比这个要高一些,你还有三次机会哦!");
}
int c = sc.nextInt();
if(c == scd) {
System.out.println("你太聪明了,竟然一下子就猜出了答案,给你给糖果吃。");
}else if(c>77){
System.out.println("你猜的分数太高了,比这个要低一些,你还有二次机会哦!");
}else if(c<77){
System.out.println("你猜的分数太低了,比这个要高一些,你还有二次机会哦!");
}
int d = sc.nextInt();
if(d == scd) {
System.out.println("你太聪明了,竟然一下子就猜出了答案,给你给糖果吃。");
}else if(d>77){
System.out.println("你猜的分数太高了,比这个要低一些,你还有一次机会哦!");
}else if(d<77){
System.out.println("你猜的分数太低了,比这个要高一些,你还有一次机会哦!");
}
int e = sc.nextInt();
if(e == scd) {
System.out.println("你太聪明了,竟然一下子就猜出了答案,给你给糖果吃。");
}else if(e>77){
System.out.println("gameover,你真笨,哈哈哈哈。。。");
}else if(e<77){
System.out.println("gameover,你真笨,哈哈哈哈。。。");
}
}
}