一、运算符
比较容易混的:
+正号作为正==3
+加 2+3 5 作为运算符
+连接字符串“中”+“国”“中国” 拼接字符串
int a=10;
int b=12;
System.out.println("sum="+a+b);//正加相连字符串
System.out.println("sum="+(a+b));//+
- * %
例题:运用变量+算是运算符+ 和拼接符“”+“”
class Demo05 { public static void main(String[] args) { System.out.println("--------------------商场库存-----------------------"); System.out.print("品牌型号"); System.out.print(" "); System.out.print("尺寸"); System.out.print(" "); System.out.print("价格"); System.out.print(" "); System.out.println("库存数"); System.out.print("Mac BookAir"); double a=13.3; System.out.print(" "); System.out.print(a); System.out.print(" "); double b=6988.88; System.out.print(b); System.out.print(" "); int c=5; System.out.println(c); System.out.print("ThinkpadT450"); System.out.print(" "); double d=14.0; System.out.print(d); System.out.print(" "); double e= 5999.99; System.out.print(e); System.out.print(" "); int f=10; System.out.println(f); System.out.print("ASUS-PL5800"); System.out.print(" "); double g=15.6; System.out.print(g); System.out.print(" "); double h=4999.5; System.out.print(h); System.out.print(" "); int i=18; System.out.println(i); System.out.println("---------------------------------------------------"); System.out.println("总库存数:"+(c+f+i)); System.out.println("库存商品总金额:"+(b*c+e*f+h*i)); } }
1.1 ++ --
++;
i++先使用初始值运算后自增加1
int a = 3; int b; b = a++ + 10; System.out.println(a);4 System.out.println(b);13
++i 先自增加1再用增加值运算
int a = 3; int b; b = ++a + 10; System.out.println(a); System.out.println(b);
新增:/除0和%取余区别
用水仙花数来举例:
var a,b,c;
for (i=100;i<1000;i++)
{ //364
var a=parseInt(i%10);//ge 364个位数
var b=parseInt((i/10)%10);//shi 除10=36.4,整形36,%10等于取10位数上的余数6
var c=parseInt(i/100);//bai
if(a*a*a+b*b*b+c*c*c==i)
{
console.log("你的水仙花数"+i);
}
}
分别是取个位,十位,百位,
首先取个位数用取余364%10=36.4取余数4,找未除尽的就是个位数上的水仙花数
十位数364取第二位6 需要先除去10=36.4再取余10=3.64取6
百位数则直接除去100=3.6取整=3
1.2 赋值运算符
int a=2;
a=a+1
a=4
a+=2;
int a=2; //a=a+2;//a=2+2 //a+=2; int b=3; //b%=2 System.out.println(a=b); System.out.println(a==b);
赋值运算符中的 * +=, -=, *=, /=, %= : 都是一样的意思都是 和1有关
1.3 比较运算符
=是赋值,右边给左边 a=3,即把3给a
!=不等于 4==3 true
==等于 false
判断是布尔值
1.4 逻辑运算符 &两边相等 &&两边相等,如果1不满足不执行后面 ^异或两边都满足取反
*/ //与& 两边都满足,不满足也走相关代码 System.out.println(true&true);//true System.out.println(true&false);//false System.out.println(false&false);//false //短路与 && 短路与当第一个条件不满足就不再走后面代码 System.out.println(true&&true);//true System.out.println(true&&false);//false System.out.println(false&&false);//false //异或 两边都满足则取相反值,如果不同是true System.out.println(true ^ true);//false System.out.println(true ^ false);//true System.out.println(false ^ false);//false //非 取反 !取方法的反值
1.5三元运算符
(条件表达式)?表达式1:表达式2;
如:
int a=3;int b=2
int max=(a>b)?(a:b)?因为a>b所以输出a,如果<输出b
3个:
int a=3;int b=2;int c=4;
int max=(a>b?a:b)?c?(a>b?a:b):c;
先判断a和b的变量大小,比出来和c进行比对。因为c最大所以输出c
四个判断:
int a=3;int b=2;int c=4;int d=6;
int max=(a>b?a:b)?(c>d?c:d)?(a>b?a:b)?(c>d?c:d);
先22判断,d最大输出
二、引用数据类型
scanner字符串类
Scanner功能:
引入数据来完成键盘录入,获取录入的数据。
使用方式:
导包:import java.util.scanner
创建对象:Scanner sc= new Scanner(System.in); sc前不需要加.
调用方法:int i=sc.nextInt();接收控制台录入的数字
int i=sc.next();接收控制台录入的字符串
System.out.println("你输入的值为:"+i);
Random 随机数类
随机数类,随机产生nextInt(0-maxValue)范围随机整数,包头不包尾,随机产生nextDouble(0,1)范围小数,包头不包尾
使用方法:
导包:import java.util Random
创建对象:Random r= new Random();
int i = r.nextInt(10);
如上面的10是0-9,若想输出1-10之间则需要r。nextInt(10)+1;
System.out.println("你输入的值为:"+i);
//产生0-1之间的随机小数
double num2=r.nextDouble();
System.out.println(num2);