1、int和Integer的区别
int 是基本数据类型,Integer是其包装类,注意是一个类。
提供包装类,是为了在各种类型间转化,通过各种方法的调用。否则 你无法直接通过变量转化。
比如,现在int要转为String:
int a=0;
String result=Integer.toString(a);
在java中包装类,比较多的用途是用在于各种数据类型的转化中,看下面的例子。
//通过包装类来实现转化的
int num=Integer.valueOf("12");
int num2=Integer.parseInt("12");
double num3=Double.valueOf("12.2");
double num4=Double.parseDouble("12.2");
//其他的类似。通过基本数据类型的包装来的valueOf和parseXX来实现String转为XX
String a=String.valueOf("1234");//这里括号中几乎可以是任何类型
String b=String.valueOf(true);
String c=new Integer(12).toString();//通过包装类的toString()也可以
String d=new Double(2.3).toString();
再举例下。比如我现在要用泛型
List<Integer> nums;
这里<>需要类。如果你用int。它会报错的。
2、Java中的break和continue
JAVA中的标签必须放在循环之前,且中间不能有其他语句。例如:for或while或do--while;
1.使用break退出一层循环(与C/C++中的break用法一样)
public static void main(String args[])
{
int i=0;
while(i<100){
if(i==10)
break;
System.out.println("i="+i);
i++;
}
}
当break用在一组嵌套循环时,将仅跳出最里面的循环。
2.使用break退出多层循环(与C/C++中的goto用法类似,跳过与标签最近的即最外层循环)
public static void main(String args[]){
outer:
for(int i=0; i<3; i++){
System.out.print("Pass "+i+":");
for(int j=0; j<100; j++)
{
if(j==10)
break outer;
System.out.print(j+" ");
}
System.out.println("This will not print");
}
}
程序的输出: 0 1 2 3 4 5 6 7 8 9
continue的使用1.在一层循环中的使用(与C/C++中的用法一样)
public static void main(String args[])
{
for(int i=0; i<10; i++)
{
System.out.print(i+" ");
if(i%2==0)
continue;
System.out.println("");
}
}
输出结果:0 12 34 56 78 9
2.在多层循环中使用(提前结束的是标签最近的最外层循环体的一次循环,提前进入最外层循环的下次循环)
public static void main(String args[]){
outer:
for(int i=0; i<10; i++)
for(int k=0;k<10;k++)
{
for(int j=0; j<10; j++)
{
if(j>i)
{
System.out.println();
continue outer;
}
System.out.print(" "+(i*j));
}
}
System.out.println();
}
00 10 2 40 3 6 90 4 8 12 160 5 10 15 20 250 6 12 18 24 30 360 7 14 21 28 35 42 490 8 16 24 32 40 48 56 640 9 18 27 36 45 54 63 72 81
(3)final变量
final变量定义: 变量一经初始化就不能指向其它对象。指向的存储地址不可修改,但指向的对象本身是可以修改的。
java final变量