【名师课堂】Java零基础入门

【名师课堂】Java零基础入门

26课时 |
79037人已学 |
(30 评论)

加入学习
加入学习

整型类型

在java中任意一个整形类型都是int型.

在整型的操作的过程中也会存在有一个数据溢出的问题,指的是当已经达到整型的最大值或最小值,进行数学计算而可能产生的错误数据.

变量的命名使用小驼峰法:maxValue;

Integer.MAX_VALUE;最大值

Integer.MIX_VALUE;最小值

public class Intyichu{
  public static void main(String args[]){
    int num = Integer.MAX_VALUE;//最大值
    System.out.println(num + 1);//溢出,加一变为最小值
  }
}

解决int溢出问题,解决方案只有一个那就是跟换数据类型,使用long类型.

  • 将int的数据变量赋值给long类型再计算
public class Intyichu{
  public static void main(String args[]){
    int num = Integer.MAX_VALUE;//得到整形最大值
    long result = num;//将其赋给long数据类型
    System.out.println(result + 1);//这样就不会存在数据溢出的问题了
  }
}
  • 将int的数据类型变为long
public class Intyichu{
  public static void main(String args[]){
    int num = Integer.MAX_VALUE;//得到整形最大值
    long result = (long)num + 1;//先将其变为long数据类型
    System.out.println(result);//这样就不会存在数据溢出的问题了
  }
}

 

大的数据类型塞到小类型里面:

public class Intyichu{
  public static void main(String args[]){
    //任何的整数其默认类型都是int,但是该数据已经超过了int可以保存的数据范围
    //那么现在就需要将这个数据明确的表示这是个long型的
    long num = 2147483648L ; //'L'或'l'都可以
    //在强制的时候设置其目标类型,这种操作都有可能会丢失其精度
    int result = (int)num;//大的类型变为小的类型,必须强制
    System.out.println(result);//-2147483648
  }
}
  • 范围小的数据类型可以自动变为大的数据类型型
  • 数据范围大的数据类型只有强制转换才可以转换为小的数据类型
  • 尽量不要使用以上操作
重要说明:之前说过所有数据类型都有一个默认值,但是其在主程序中无效
错误示范:
public class Intyichu{
  public static void main(String args[]){
    int num ;//定义一个num变量
    System.out.println(num);//错误,可能尚未初始化
  }
}

两种解决方案:

  • 在变量输出前为变量设置内容
public class Intyichu{
  public static void main(String args[]){
    int num ;//定义一个num变量
    num = 10;//在输出前为其设置内容
    System.out.println(num);//错误,可能尚未初始化
  }
}

这种方式在老版本中也会出错.

  • 通用做法
public class Intyichu{
  public static void main(String args[]){
    int num = 10;//在输出前为其设置内容
    System.out.println(num);//错误,可能尚未初始化
  }
}

说到整型,不得不去考率byte数据类型,他的保存范围是:-128~127之间。

范例:声明byte类型

public class Intyichu{
  public static void main(String args[]){
    //10是int,int的范围要大于byte范围,那么理论上需要强制转换
    //可是没有转换,因为其数据量没有超出byte范围,符合byte要求
    byte data = 10 ;//10是int类型在byte范围内
    System.out.println(data) ;
  }
}

如果现在你为byte赋值的内容大于byte的范围,这个时候就需要强制转换了。

public class Intyichu{
  public static void main(String args[]){
    byte data = (int)128 ;
    System.out.println(data) ;//-128
  }
}

同时需要注意的是,如果要将int常量直接赋值给byte变量,那么要求只能够是常量,而不能是int变量。

错误实例:

public class Intyichu{
  public static void main(String args[]){
    Int num = 10;
    byte result = num;
    System.out.println(result);
  }
}

正确实例:

public class Intyichu{
  public static void main(String args[]){
    Int num = 10;
    byte result =(byte) num;
    System.out.println(result);
  }
}

在开发中,byte和int经常会一起出现。

 
[展开全文]

数据类型的默认值在主方法中无效。

主方法中变量都需要赋予默认值。

最好在定义变量的时候就赋予默认值。

 

 

[展开全文]
终结命运 · 2017-06-28 · Java数据类型划分(整型类型) 0

类的命名首字母大写,变量的首字母小写

在int最大值

-2147483648~2147483647

int max=2147483647+1=-2147483648;

int min=-2147483648-1=2147483647

int min=-2147483648-2=2147483646

执行程序都是右边到左边
60!  60的阶乘

所有变量定义的时候给他默认值

[展开全文]
小花花花 · 2017-09-13 · Java数据类型划分(整型类型) 0

范围小的数据类型可以自动变为范围大的数据类型

[展开全文]

变量命名要求:第一个单词字母小写,后续每个单词首字母大写。

 

[展开全文]
冰鸡翅可乐 · 2017-07-01 · Java数据类型划分(整型类型) 0

max + 1 = min.

min - 1 = max.

min - 2 = max - 1.

 

常数是int型,如果超出int 范围,可以在数字后加L表示。

[展开全文]

1.变量命名要求:第一个单词小写,而后每个单词首字母大写 例如 maxValue

public class TestDemo{
    public static void main(String args[]){
//取得int 类型数据的最大值
           int maxValue = Integer.MAX_VALUE ;
           int minValue = Interger.MIN_VALUE;}

2.类型强制转换 :(类型名) 变量名,可能会造成内容损失

3. 任何的整数其默认类型都是int,但该数超过了int的可表示范围,就需要将该数据表示为一个long型的数据,方法 long num = 2147

[展开全文]

授课教师

阿里云开发者社区全面升级
一站式体验,助力云上开发!
进入新社区

相关课程

查看更多 >

本课程相关云产品