static 和 final 的区别:
①static void/int a:地址不变
②final 值永远不变,可以重载,不能重写。
③static 可以修饰代码块和变量,而final可以修饰变量和类.如果想让所有的类来访问就使用static来作为修修饰符。
④static表示静态的,从始至终只获得一块内存空间.而且这块空间的资源还具有”全局性”,所有成员都可以无条件引用.
⑤static静态方法中不可以使用非静态方法,非静态方法中可以使用静态方法。
1.数据精度从高到底排序:
Byte --> short(char) --> int --> long --> float --> double
2.(类型名)要转换的值,int x=(int) 34.89
3.char 与byte或short之间的赋值必须实行强制转换.
例子1
public class j03 {
public static void main(String args[]){
byte a=120;
short b=225;
int c=2200;
long d=8000;
float f;
double g=0.1234567812345678;
b=a;
c=(int)d;
f=(float)g;
System.out.println("a="+a);
System.out.println("b="+b);
System.out.println("c="+c);
System.out.println("d="+d);
System.out.println("f="+f);
System.out.println("g="+g);
}
}
4.Java位运算符主要面对基本数据类型
包括byte,short,int,long和char.--位运算符包括”按位与”&,”按位或”|,”按位非”~,”按位异或”^, 左移<<, 右移>>.此外,java引入一个专门用于逻辑右移运算符>>>,它采用了所谓的零扩展技术,不论原值是正负,一律在高位补0.
5.instanceof运算符(双目运算符)
--左面的操作元是一个对象,右面是一个类.当左面的对象是右面的类创建的对象是,该运算的结果是true,否则是false.
课后练习题
习题一:
public class j05 {
public static void main(String args[]){
int i=2;
short s=3;
float f=2.123f;
double d=2.56;
f=(int)i;
d=s;
f=(float)d;
System.out.println("i="+i);
System.out.println("s="+s);
System.out.println("f="+f);
System.out.println("d="+d);
}
}
习题二:
public class j06 {
public static void main(String args[]){
int i=2;
short s=3;
float f=2.123f;
double d=2.56;
s=(s++);
f=(int)f;
d=(int)d;
System.out.println("i="+i);
System.out.println("s="+s);
System.out.println("f="+f);
System.out.println("d="+d);
}
}
习题三:
import java.util.*;
public class j07 {
public static void main(String args[]){
Scanner out = new Scanner(System.in);
System.out.println("输入成绩:");
int X= out.nextInt();
if(X>=90){
System.out.println("优秀");
}
else{
System.out.println("继续努力!");
}
}
}
习题四:
public class j08 {
public static void main(String[] args){
int sum=0;
for(int i=2;i<=100;i+=2){ //i+=2等价于i=i+2
sum=sum+i;
}
System.out.println("2-100之间所有偶数之和为:"+sum);
}
}