1.java的基本数据类型
八种:byte short int long float double char boolean
js是弱类型语言 java是强类型语言
//1.byte -128-127
byte b=120;
System.out.println(“B:”+b);
//b=128;右边的赋值数字不能超过左边数据类型的范围
long l=1000L;//如果要定义成long类型,后面必须加上大写的L或者小写的l
System.out.println(“l:”+l);
//2.小数
double d=10;
System.out.println(“d:”+d);
float f=12F;//float值必须加上大写的F或者小写f
System.out.println(“f:”+f);
//3字符型
char c=‘a’;
System.out.println(“c:”+c);
//布尔类型 只有两个值:true false
boolean b1=true;
System.out.println(“b1:”+b1);
2. * 类型转换
* 1.自动类型转换:把小的放到大的里面
* 2.强制类型转换:把大的放到小的里面
* 3.把字符串类型转换成其他数据类型(使用对应包装类的parsexxx()方法)
System.out.println("");
short s=10;
int num=s;//把小的(short)转成的大的(int),可以自动类型转换
System.out.println(“num:”+num);
int num1=20;
//把大的箱子放到小箱子里面,我需要强制类型转换
//需要转成什么类型的,在变量前面加上该类型就可以了
short s1=(short)num1;
System.out.println(“s1:”+s1);
System.out.println("==");
//把字符串转成int类型,转换有前提,字符串的值不能包含中文
String str=“123”;
//每一个基本数据类型都有自己对应的包装类,每个包装类里面都封装了对应的转换方法
//Integer是int类型的包装类
int num2=Integer.parseInt(str);//把字符串转成了int
System.out.println(“num2:”+num2);
//把字符串转成double
String str1=“456”;
double dob=Double.parseDouble(str1);
System.out.println(“dob:”+dob);
//把int类型转成字符串
int num3=110;
String str2=num3+"";
System.out.println(“str2:”+str2);
//第二种方式
int num4=120;
//转成什么类型,那么就去String类里面找方法
String str3=String.valueOf(num4);
System.out.println(“str3:”+str3);
System.out.println(“我是\n中国人”);
}
}
- 算术运算符
+-*/%
- 1.自增运算 ++ 在原有的基础上,累加1(涨一个数)
- 2.自减运算 – 在原有的基础上,累减1(降一个数)
- 使用格式:
- 可以在变量前面使用++ ++num
- 可以在变量后面使用++ num++
- 前后有啥区别?
- 1.如果单独使用的话,没有任何区别
- 2.混合使用
- (1).如果是后++,先使用变量的值,然后在+1,先用后加
- (2),如果是前++,变量的值会立马+1,如果拿着累加的值进行使用,先加后用
*/
public class Demo4 {
public static void main(String[] args) {
//加
//作用在数字上面,求和
//int num=10;
//int num1=20;
//System.out.println(num+num1);
//
////作用在字符上面,不是求和,而是两个字符串拼接
//String str=“尼古拉斯赵四”;
//int num2=20;
//System.out.println(str+num2);
System.out.println("");
int num=10;
++num;//单独使用
System.out.println(num);
int num1=10;
num1++;//单独用
System.out.println(num1);//11
System.out.println("==");
int a=10;
System.out.println(++a);//11
int b=10;
System.out.println(b++);//10
int d=10;
int e=10;
int f=(d++)+(++d)+(d–)+(–e)+(e++)+(++e);
//10+12+12+9+9+11
System.out.println(f);
int j=12;
int h=16;
int sum=(–j)+(h–)+(j++)+(++h)+(j–)+(++j);
// 11+16+11+16+12+12
System.out.println(sum);
}
}
4.赋值运算符:就是把右边的值赋值给左边的变量
- =:不是相等的意思,
- +=: a=a+b;可以简写成a+=b,
- -=
- *=
- /=
- %=
*/
public class Demo5 {
public static void main(String[] args) {
int a=10;
int b=10;
//a=a+b;
//可以简写
a+=b;
System.out.println(a);
}
}
5.比较运算符:比较两个变量值 只是针对于基本数据类型进行比较
- 比较后只能是Boolean,要么为true要么为false
- == 比较两个值是否相等
- >
- <
- !=
- >=
- <=
public class Demo6 {
public static void main(String[] args) {
int a=20;
int b=30;
System.out.println(a==b);//false
}
}
6.逻辑运算符
- &(并且):所有的条件都为true,返回true,如果其中有一个为false,就为false
- |(或者):只要有一个为true,就返回true,如果都为false,返回false
- ^(异):相同为false,不同为true
- !(非):本来是false改成true
- 逻辑运算符 &和|可以双写
- 单写和双写有什么区别呢?
- 1.短路与:如果左侧已经可以判断最终结果了,那么后面的判断将不会再被执行
- 以后开发使用短路与,因为他的开发执行效率高
*/
public class Demo7 {
public static void main(String[] args) {
boolean a=true;
boolean b=false;
System.out.println(a&b);//false
System.out.println(4>3|7<2);//true
System.out.println(true^true);//false
System.out.println(!true);//false
System.out.println(“区别====”);
int num=10;
System.out.println(3>4 & ++num>5);
System.out.println(num);//11
int num1=10;
System.out.println(3>4 && ++num1>5);
System.out.println(num1);//10
System.out.println("==============");
int num2=10;
System.out.println(4>3 | ++num2<10);
System.out.println(num2);//11
int num3=10;
System.out.println(4>3 || ++num3<10);
System.out.println(num3);//10
}
}
7.三元运算符:
* 条件表达式?表达式1:表达式2
* 如果条件表达式为true,执行表达式1
* 如果条件表达式为false,执行表达式2
*/
//定义两个整数,判断a是否大于吧,如果大于b,输出a大,相反输出b大
int a=100;
int b=200;
String result= (a>b)?“a大”:“b大”;
System.out.println(result);
//实现两个变量值的互换
int m=6;
int n=5;
int t;
t=m;
m=n;
n=t;
System.out.println(“m:”+m);
System.out.println(“n:”+n);
}
}